@teambit/tracker 1.0.106 → 1.0.108

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.
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_envs","_interopRequireDefault","_workspace","_interopRequireWildcard","_logger","_addCmd","_addComponents","_tracker","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_defineProperty","key","value","_toPropertyKey","enumerable","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","TrackerMain","constructor","workspace","logger","track","trackData","defaultScope","addOwnerToScopeName","undefined","addComponent","AddComponents","componentPaths","rootDir","id","componentName","main","mainFile","override","config","result","add","addedComponent","addedComponents","fullName","files","map","f","relativePath","warnings","addForCLI","addProps","OutsideWorkspaceError","addContext","shouldHandleOutOfSync","env","addEnvToConfig","addComponents","addResults","consumer","onDestroy","userEnvId","resolveComponentId","userEnvIdWithPotentialVersion","resolveEnvIdWithPotentialVersionForConfig","err","toStringWithoutVersion","EnvsAspect","scopeName","includes","isSelfHosted","isHostedByBit","wsDefaultScope","warn","owner","split","remotes","scope","_legacyRemotes","isHub","provider","cli","loggerMain","createLogger","TrackerAspect","trackerMain","register","AddCmd","exports","CLIAspect","WorkspaceAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["tracker.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport EnvsAspect from '@teambit/envs';\nimport WorkspaceAspect, { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { PathOsBasedRelative } from '@teambit/legacy/dist/utils/path';\nimport { AddCmd } from './add-cmd';\nimport AddComponents, { AddActionResults, AddContext, AddProps, Warnings } from './add-components';\nimport { TrackerAspect } from './tracker.aspect';\n\nexport type TrackResult = { componentName: string; files: string[]; warnings: Warnings };\n\nexport type TrackData = {\n rootDir: PathOsBasedRelative; // path relative to the workspace\n componentName?: string; // if empty, it'll be generated from the path\n mainFile?: string; // if empty, attempts will be made to guess the best candidate\n defaultScope?: string; // can be entered as part of \"bit create\" command, helpful for out-of-sync logic\n config?: { [aspectName: string]: any }; // config specific to this component, which overrides variants of workspace.jsonc\n};\n\nexport class TrackerMain {\n constructor(private workspace: Workspace, private logger: Logger) {}\n\n /**\n * add a new component to the .bitmap file.\n * this method only adds the records in memory but doesn't persist to the filesystem.\n * to write the .bitmap file once completed, run \"await this.bitMap.write();\"\n */\n async track(trackData: TrackData): Promise<TrackResult> {\n const defaultScope = trackData.defaultScope ? await this.addOwnerToScopeName(trackData.defaultScope) : undefined;\n const addComponent = new AddComponents(\n { workspace: this.workspace },\n {\n componentPaths: [trackData.rootDir],\n id: trackData.componentName,\n main: trackData.mainFile,\n override: false,\n defaultScope,\n config: trackData.config,\n }\n );\n const result = await addComponent.add();\n const addedComponent = result.addedComponents[0];\n const componentName = addedComponent?.id.fullName || (trackData.componentName as string);\n const files = addedComponent?.files.map((f) => f.relativePath) || [];\n return { componentName, files, warnings: result.warnings };\n }\n\n async addForCLI(addProps: AddProps): Promise<AddActionResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const addContext: AddContext = { workspace: this.workspace };\n addProps.shouldHandleOutOfSync = true;\n if (addProps.env) {\n const config = {};\n await this.addEnvToConfig(addProps.env, config);\n addProps.config = config;\n }\n const addComponents = new AddComponents(addContext, addProps);\n const addResults = await addComponents.add();\n await this.workspace.consumer.onDestroy('add');\n\n return addResults;\n }\n\n async addEnvToConfig(env: string, config: { [aspectName: string]: any }) {\n const userEnvId = await this.workspace.resolveComponentId(env);\n let userEnvIdWithPotentialVersion: string;\n try {\n userEnvIdWithPotentialVersion = await this.workspace.resolveEnvIdWithPotentialVersionForConfig(userEnvId);\n } catch (err) {\n // the env needs to be without version\n userEnvIdWithPotentialVersion = userEnvId.toStringWithoutVersion();\n }\n config[userEnvIdWithPotentialVersion] = {};\n config[EnvsAspect.id] = config[EnvsAspect.id] || {};\n config[EnvsAspect.id].env = userEnvId.toStringWithoutVersion();\n }\n\n /**\n * scopes in bit.dev are \"owner.collection\".\n * we might have the scope-name only without the owner and we need to retrieve it from the defaultScope in the\n * workspace.jsonc file.\n *\n * @param scopeName scopeName that might not have the owner part.\n * @returns full scope name\n */\n private async addOwnerToScopeName(scopeName: string): Promise<string> {\n if (scopeName.includes('.')) return scopeName; // it has owner.\n const isSelfHosted = !(await this.isHostedByBit(scopeName));\n if (isSelfHosted) return scopeName;\n const wsDefaultScope = this.workspace.defaultScope;\n if (!wsDefaultScope.includes('.')) {\n this.logger.warn(`the entered scope ${scopeName} has no owner nor the defaultScope in workspace.jsonc`);\n // it's possible that the user entered a non-exist scope just to test the command and will change it later.\n return scopeName;\n }\n const [owner] = wsDefaultScope.split('.');\n return `${owner}.${scopeName}`;\n }\n\n /**\n * whether a scope is hosted by Bit cloud.\n * otherwise, it is self-hosted\n */\n private async isHostedByBit(scopeName: string): Promise<boolean> {\n // TODO: once scope create a new API for this, replace it with the new one\n const remotes = await this.workspace.scope._legacyRemotes();\n return remotes.isHub(scopeName);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace, loggerMain]: [CLIMain, Workspace, LoggerMain]) {\n const logger = loggerMain.createLogger(TrackerAspect.id);\n const trackerMain = new TrackerMain(workspace, logger);\n cli.register(new AddCmd(trackerMain));\n return trackerMain;\n }\n}\n\nTrackerAspect.addRuntime(TrackerMain);\n\nexport default TrackerMain;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_cli","data","require","_envs","_interopRequireDefault","_workspace","_interopRequireWildcard","_logger","_addCmd","_addComponents","_tracker","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_defineProperty","key","value","_toPropertyKey","enumerable","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","TrackerMain","constructor","workspace","logger","track","trackData","defaultScope","addOwnerToScopeName","undefined","addComponent","AddComponents","componentPaths","rootDir","id","componentName","main","mainFile","override","config","result","add","addedComponent","addedComponents","fullName","files","map","f","relativePath","warnings","addForCLI","addProps","OutsideWorkspaceError","addContext","shouldHandleOutOfSync","env","addEnvToConfig","addComponents","addResults","consumer","onDestroy","userEnvId","resolveComponentId","userEnvIdWithPotentialVersion","resolveEnvIdWithPotentialVersionForConfig","err","toStringWithoutVersion","EnvsAspect","scopeName","includes","isSelfHosted","isHostedByBit","wsDefaultScope","warn","owner","split","remotes","scope","_legacyRemotes","isHub","provider","cli","loggerMain","createLogger","TrackerAspect","trackerMain","register","AddCmd","exports","CLIAspect","WorkspaceAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["tracker.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport EnvsAspect from '@teambit/envs';\nimport WorkspaceAspect, { OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { PathOsBasedRelative } from '@teambit/legacy/dist/utils/path';\nimport { AddCmd } from './add-cmd';\nimport AddComponents, { AddActionResults, AddContext, AddProps, Warnings } from './add-components';\nimport { TrackerAspect } from './tracker.aspect';\n\nexport type TrackResult = { componentName: string; files: string[]; warnings: Warnings };\n\nexport type TrackData = {\n rootDir: PathOsBasedRelative; // path relative to the workspace\n componentName?: string; // if empty, it'll be generated from the path\n mainFile?: string; // if empty, attempts will be made to guess the best candidate\n defaultScope?: string; // can be entered as part of \"bit create\" command, helpful for out-of-sync logic\n config?: { [aspectName: string]: any }; // config specific to this component, which overrides variants of workspace.jsonc\n};\n\nexport class TrackerMain {\n constructor(private workspace: Workspace, private logger: Logger) {}\n\n /**\n * add a new component to the .bitmap file.\n * this method only adds the records in memory but doesn't persist to the filesystem.\n * to write the .bitmap file once completed, run \"await this.bitMap.write();\"\n */\n async track(trackData: TrackData): Promise<TrackResult> {\n const defaultScope = trackData.defaultScope ? await this.addOwnerToScopeName(trackData.defaultScope) : undefined;\n const addComponent = new AddComponents(\n { workspace: this.workspace },\n {\n componentPaths: [trackData.rootDir],\n id: trackData.componentName,\n main: trackData.mainFile,\n override: false,\n defaultScope,\n config: trackData.config,\n }\n );\n const result = await addComponent.add();\n const addedComponent = result.addedComponents[0];\n const componentName = addedComponent?.id.fullName || (trackData.componentName as string);\n const files = addedComponent?.files.map((f) => f.relativePath) || [];\n return { componentName, files, warnings: result.warnings };\n }\n\n async addForCLI(addProps: AddProps): Promise<AddActionResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const addContext: AddContext = { workspace: this.workspace };\n addProps.shouldHandleOutOfSync = true;\n if (addProps.env) {\n const config = {};\n await this.addEnvToConfig(addProps.env, config);\n addProps.config = config;\n }\n const addComponents = new AddComponents(addContext, addProps);\n const addResults = await addComponents.add();\n await this.workspace.consumer.onDestroy('add');\n\n return addResults;\n }\n\n async addEnvToConfig(env: string, config: { [aspectName: string]: any }) {\n const userEnvId = await this.workspace.resolveComponentId(env);\n let userEnvIdWithPotentialVersion: string;\n try {\n userEnvIdWithPotentialVersion = await this.workspace.resolveEnvIdWithPotentialVersionForConfig(userEnvId);\n } catch (err) {\n // the env needs to be without version\n userEnvIdWithPotentialVersion = userEnvId.toStringWithoutVersion();\n }\n config[userEnvIdWithPotentialVersion] = {};\n config[EnvsAspect.id] = config[EnvsAspect.id] || {};\n config[EnvsAspect.id].env = userEnvId.toStringWithoutVersion();\n }\n\n /**\n * scopes in bit.dev are \"owner.collection\".\n * we might have the scope-name only without the owner and we need to retrieve it from the defaultScope in the\n * workspace.jsonc file.\n *\n * @param scopeName scopeName that might not have the owner part.\n * @returns full scope name\n */\n private async addOwnerToScopeName(scopeName: string): Promise<string> {\n if (scopeName.includes('.')) return scopeName; // it has owner.\n const isSelfHosted = !(await this.isHostedByBit(scopeName));\n if (isSelfHosted) return scopeName;\n const wsDefaultScope = this.workspace.defaultScope;\n if (!wsDefaultScope.includes('.')) {\n this.logger.warn(`the entered scope ${scopeName} has no owner nor the defaultScope in workspace.jsonc`);\n // it's possible that the user entered a non-exist scope just to test the command and will change it later.\n return scopeName;\n }\n const [owner] = wsDefaultScope.split('.');\n return `${owner}.${scopeName}`;\n }\n\n /**\n * whether a scope is hosted by Bit cloud.\n * otherwise, it is self-hosted\n */\n private async isHostedByBit(scopeName: string): Promise<boolean> {\n // TODO: once scope create a new API for this, replace it with the new one\n const remotes = await this.workspace.scope._legacyRemotes();\n return remotes.isHub(scopeName);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace, loggerMain]: [CLIMain, Workspace, LoggerMain]) {\n const logger = loggerMain.createLogger(TrackerAspect.id);\n const trackerMain = new TrackerMain(workspace, logger);\n cli.register(new AddCmd(trackerMain));\n return trackerMain;\n }\n}\n\nTrackerAspect.addRuntime(TrackerMain);\n\nexport default TrackerMain;\n"],"mappings":"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"}
package/index.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { TrackerAspect } from './tracker.aspect';
2
+
3
+ export type { TrackerMain } from './tracker.main.runtime';
4
+ export default TrackerAspect;
5
+ export { TrackerAspect };
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/tracker",
3
- "version": "1.0.106",
3
+ "version": "1.0.108",
4
4
  "homepage": "https://bit.cloud/teambit/component/tracker",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "tracker",
9
- "version": "1.0.106"
9
+ "version": "1.0.108"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -16,31 +16,25 @@
16
16
  "ignore": "3.3.10",
17
17
  "lodash.groupby": "4.6.0",
18
18
  "string-format": "0.5.0",
19
- "core-js": "^3.0.0",
20
- "@babel/runtime": "7.20.0",
21
19
  "@teambit/bit-error": "0.0.404",
22
20
  "@teambit/component-id": "1.2.0",
23
21
  "@teambit/legacy-bit-id": "1.1.0",
24
22
  "@teambit/harmony": "0.4.6",
25
- "@teambit/cli": "0.0.839",
26
- "@teambit/workspace.modules.node-modules-linker": "0.0.157",
27
- "@teambit/workspace": "1.0.106",
28
- "@teambit/envs": "1.0.106",
29
- "@teambit/logger": "0.0.932"
23
+ "@teambit/cli": "0.0.840",
24
+ "@teambit/workspace.modules.node-modules-linker": "0.0.158",
25
+ "@teambit/workspace": "1.0.108",
26
+ "@teambit/envs": "1.0.108",
27
+ "@teambit/logger": "0.0.933"
30
28
  },
31
29
  "devDependencies": {
32
30
  "@types/fs-extra": "9.0.7",
33
31
  "@types/mocha": "9.1.0",
34
- "@types/node": "12.20.4",
35
- "@types/react": "^17.0.8",
36
- "@types/react-dom": "^17.0.5",
37
- "@types/jest": "^26.0.0",
38
- "@types/testing-library__jest-dom": "5.9.5"
32
+ "@types/jest": "^29.2.2",
33
+ "@types/testing-library__jest-dom": "^5.9.5",
34
+ "@teambit/harmony.envs.core-aspect-env": "0.0.13"
39
35
  },
40
36
  "peerDependencies": {
41
- "@teambit/legacy": "1.0.624",
42
- "react": "^16.8.0 || ^17.0.0",
43
- "react-dom": "^16.8.0 || ^17.0.0"
37
+ "@teambit/legacy": "1.0.624"
44
38
  },
45
39
  "license": "Apache-2.0",
46
40
  "optionalDependencies": {},
@@ -54,7 +48,7 @@
54
48
  },
55
49
  "private": false,
56
50
  "engines": {
57
- "node": ">=12.22.0"
51
+ "node": ">=16.0.0"
58
52
  },
59
53
  "repository": {
60
54
  "type": "git",
@@ -63,12 +57,9 @@
63
57
  "keywords": [
64
58
  "bit",
65
59
  "bit-aspect",
60
+ "bit-core-aspect",
66
61
  "components",
67
62
  "collaboration",
68
- "web",
69
- "react",
70
- "react-components",
71
- "angular",
72
- "angular-components"
63
+ "web"
73
64
  ]
74
65
  }
@@ -0,0 +1,5 @@
1
+ import { Aspect } from '@teambit/harmony';
2
+
3
+ export const TrackerAspect = Aspect.create({
4
+ id: 'teambit.component/tracker',
5
+ });
@@ -0,0 +1,123 @@
1
+ import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';
2
+ import EnvsAspect from '@teambit/envs';
3
+ import WorkspaceAspect, { OutsideWorkspaceError, Workspace } from '@teambit/workspace';
4
+ import { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';
5
+ import { PathOsBasedRelative } from '@teambit/legacy/dist/utils/path';
6
+ import { AddCmd } from './add-cmd';
7
+ import AddComponents, { AddActionResults, AddContext, AddProps, Warnings } from './add-components';
8
+ import { TrackerAspect } from './tracker.aspect';
9
+
10
+ export type TrackResult = { componentName: string; files: string[]; warnings: Warnings };
11
+
12
+ export type TrackData = {
13
+ rootDir: PathOsBasedRelative; // path relative to the workspace
14
+ componentName?: string; // if empty, it'll be generated from the path
15
+ mainFile?: string; // if empty, attempts will be made to guess the best candidate
16
+ defaultScope?: string; // can be entered as part of "bit create" command, helpful for out-of-sync logic
17
+ config?: { [aspectName: string]: any }; // config specific to this component, which overrides variants of workspace.jsonc
18
+ };
19
+
20
+ export class TrackerMain {
21
+ constructor(private workspace: Workspace, private logger: Logger) {}
22
+
23
+ /**
24
+ * add a new component to the .bitmap file.
25
+ * this method only adds the records in memory but doesn't persist to the filesystem.
26
+ * to write the .bitmap file once completed, run "await this.bitMap.write();"
27
+ */
28
+ async track(trackData: TrackData): Promise<TrackResult> {
29
+ const defaultScope = trackData.defaultScope ? await this.addOwnerToScopeName(trackData.defaultScope) : undefined;
30
+ const addComponent = new AddComponents(
31
+ { workspace: this.workspace },
32
+ {
33
+ componentPaths: [trackData.rootDir],
34
+ id: trackData.componentName,
35
+ main: trackData.mainFile,
36
+ override: false,
37
+ defaultScope,
38
+ config: trackData.config,
39
+ }
40
+ );
41
+ const result = await addComponent.add();
42
+ const addedComponent = result.addedComponents[0];
43
+ const componentName = addedComponent?.id.fullName || (trackData.componentName as string);
44
+ const files = addedComponent?.files.map((f) => f.relativePath) || [];
45
+ return { componentName, files, warnings: result.warnings };
46
+ }
47
+
48
+ async addForCLI(addProps: AddProps): Promise<AddActionResults> {
49
+ if (!this.workspace) throw new OutsideWorkspaceError();
50
+ const addContext: AddContext = { workspace: this.workspace };
51
+ addProps.shouldHandleOutOfSync = true;
52
+ if (addProps.env) {
53
+ const config = {};
54
+ await this.addEnvToConfig(addProps.env, config);
55
+ addProps.config = config;
56
+ }
57
+ const addComponents = new AddComponents(addContext, addProps);
58
+ const addResults = await addComponents.add();
59
+ await this.workspace.consumer.onDestroy('add');
60
+
61
+ return addResults;
62
+ }
63
+
64
+ async addEnvToConfig(env: string, config: { [aspectName: string]: any }) {
65
+ const userEnvId = await this.workspace.resolveComponentId(env);
66
+ let userEnvIdWithPotentialVersion: string;
67
+ try {
68
+ userEnvIdWithPotentialVersion = await this.workspace.resolveEnvIdWithPotentialVersionForConfig(userEnvId);
69
+ } catch (err) {
70
+ // the env needs to be without version
71
+ userEnvIdWithPotentialVersion = userEnvId.toStringWithoutVersion();
72
+ }
73
+ config[userEnvIdWithPotentialVersion] = {};
74
+ config[EnvsAspect.id] = config[EnvsAspect.id] || {};
75
+ config[EnvsAspect.id].env = userEnvId.toStringWithoutVersion();
76
+ }
77
+
78
+ /**
79
+ * scopes in bit.dev are "owner.collection".
80
+ * we might have the scope-name only without the owner and we need to retrieve it from the defaultScope in the
81
+ * workspace.jsonc file.
82
+ *
83
+ * @param scopeName scopeName that might not have the owner part.
84
+ * @returns full scope name
85
+ */
86
+ private async addOwnerToScopeName(scopeName: string): Promise<string> {
87
+ if (scopeName.includes('.')) return scopeName; // it has owner.
88
+ const isSelfHosted = !(await this.isHostedByBit(scopeName));
89
+ if (isSelfHosted) return scopeName;
90
+ const wsDefaultScope = this.workspace.defaultScope;
91
+ if (!wsDefaultScope.includes('.')) {
92
+ this.logger.warn(`the entered scope ${scopeName} has no owner nor the defaultScope in workspace.jsonc`);
93
+ // it's possible that the user entered a non-exist scope just to test the command and will change it later.
94
+ return scopeName;
95
+ }
96
+ const [owner] = wsDefaultScope.split('.');
97
+ return `${owner}.${scopeName}`;
98
+ }
99
+
100
+ /**
101
+ * whether a scope is hosted by Bit cloud.
102
+ * otherwise, it is self-hosted
103
+ */
104
+ private async isHostedByBit(scopeName: string): Promise<boolean> {
105
+ // TODO: once scope create a new API for this, replace it with the new one
106
+ const remotes = await this.workspace.scope._legacyRemotes();
107
+ return remotes.isHub(scopeName);
108
+ }
109
+
110
+ static slots = [];
111
+ static dependencies = [CLIAspect, WorkspaceAspect, LoggerAspect];
112
+ static runtime = MainRuntime;
113
+ static async provider([cli, workspace, loggerMain]: [CLIMain, Workspace, LoggerMain]) {
114
+ const logger = loggerMain.createLogger(TrackerAspect.id);
115
+ const trackerMain = new TrackerMain(workspace, logger);
116
+ cli.register(new AddCmd(trackerMain));
117
+ return trackerMain;
118
+ }
119
+ }
120
+
121
+ TrackerAspect.addRuntime(TrackerMain);
122
+
123
+ export default TrackerMain;
package/tsconfig.json CHANGED
@@ -1,38 +1,33 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "lib": [
4
- "es2019",
5
- "DOM",
6
- "ES6",
7
- "DOM.Iterable",
8
- "ScriptHost"
4
+ "esnext",
5
+ "dom",
6
+ "dom.Iterable"
9
7
  ],
10
- "target": "es2015",
11
- "module": "CommonJS",
12
- "jsx": "react",
13
- "allowJs": true,
14
- "composite": true,
8
+ "target": "es2020",
9
+ "module": "es2020",
10
+ "jsx": "react-jsx",
15
11
  "declaration": true,
16
12
  "sourceMap": true,
17
- "skipLibCheck": true,
18
13
  "experimentalDecorators": true,
19
- "outDir": "dist",
14
+ "skipLibCheck": true,
20
15
  "moduleResolution": "node",
21
16
  "esModuleInterop": true,
22
- "rootDir": ".",
23
17
  "resolveJsonModule": true,
24
- "emitDeclarationOnly": true,
25
- "emitDecoratorMetadata": true,
26
- "allowSyntheticDefaultImports": true,
27
- "strictPropertyInitialization": false,
28
- "strict": true,
29
- "noImplicitAny": false,
30
- "preserveConstEnums": true
18
+ "allowJs": true,
19
+ "outDir": "dist",
20
+ "emitDeclarationOnly": true
31
21
  },
32
22
  "exclude": [
23
+ "artifacts",
24
+ "public",
33
25
  "dist",
26
+ "node_modules",
27
+ "package.json",
34
28
  "esm.mjs",
35
- "package.json"
29
+ "**/*.cjs",
30
+ "./dist"
36
31
  ],
37
32
  "include": [
38
33
  "**/*",
package/types/asset.d.ts CHANGED
@@ -5,12 +5,12 @@ declare module '*.png' {
5
5
  declare module '*.svg' {
6
6
  import type { FunctionComponent, SVGProps } from 'react';
7
7
 
8
- export const ReactComponent: FunctionComponent<SVGProps<SVGSVGElement> & { title?: string }>;
8
+ export const ReactComponent: FunctionComponent<
9
+ SVGProps<SVGSVGElement> & { title?: string }
10
+ >;
9
11
  const src: string;
10
12
  export default src;
11
13
  }
12
-
13
- // @TODO Gilad
14
14
  declare module '*.jpg' {
15
15
  const value: any;
16
16
  export = value;
@@ -27,3 +27,15 @@ declare module '*.bmp' {
27
27
  const value: any;
28
28
  export = value;
29
29
  }
30
+ declare module '*.otf' {
31
+ const value: any;
32
+ export = value;
33
+ }
34
+ declare module '*.woff' {
35
+ const value: any;
36
+ export = value;
37
+ }
38
+ declare module '*.woff2' {
39
+ const value: any;
40
+ export = value;
41
+ }