@hubspot/cli 7.11.6-experimental.0 → 7.11.7-experimental.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 (39) hide show
  1. package/commands/project/__tests__/devUnifiedFlow.test.js +2 -2
  2. package/commands/project/create.js +1 -1
  3. package/commands/project/dev/unifiedFlow.d.ts +1 -1
  4. package/commands/project/dev/unifiedFlow.js +1 -2
  5. package/commands/project/profile/add.js +1 -1
  6. package/commands/project/profile/delete.js +1 -1
  7. package/lang/en.js +1 -1
  8. package/lib/__tests__/projectProfiles.test.js +2 -2
  9. package/lib/app/__tests__/migrate.test.js +2 -2
  10. package/lib/app/migrate.js +2 -2
  11. package/lib/projectProfiles.d.ts +1 -1
  12. package/lib/projectProfiles.js +1 -1
  13. package/lib/projects/__tests__/DevServerManager.test.js +1 -0
  14. package/lib/projects/__tests__/LocalDevProcess.test.js +2 -2
  15. package/lib/projects/__tests__/components.test.js +5 -20
  16. package/lib/projects/__tests__/localDevProjectHelpers.test.js +3 -4
  17. package/lib/projects/add/__tests__/v2AddComponent.test.js +2 -2
  18. package/lib/projects/add/v2AddComponent.js +2 -2
  19. package/lib/projects/components.d.ts +1 -1
  20. package/lib/projects/components.js +2 -2
  21. package/lib/projects/create/v2.d.ts +1 -1
  22. package/lib/projects/create/v2.js +1 -1
  23. package/lib/projects/localDev/LocalDevProcess.d.ts +1 -1
  24. package/lib/projects/localDev/LocalDevProcess.js +1 -1
  25. package/lib/projects/localDev/LocalDevState.d.ts +2 -1
  26. package/lib/projects/localDev/helpers/project.d.ts +1 -1
  27. package/lib/projects/localDev/helpers/project.js +1 -1
  28. package/lib/projects/pollProjectBuildAndDeploy.js +2 -2
  29. package/lib/projects/structure.d.ts +1 -1
  30. package/lib/projects/upload.js +2 -1
  31. package/lib/theme/__tests__/migrate.test.js +2 -2
  32. package/lib/theme/migrate.js +1 -1
  33. package/mcp-server/tools/project/GetConfigValuesTool.js +2 -1
  34. package/mcp-server/tools/project/UploadProjectTools.js +1 -1
  35. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +4 -2
  36. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +2 -2
  37. package/package.json +4 -4
  38. package/types/LocalDev.d.ts +2 -1
  39. package/types/ProjectComponents.d.ts +1 -1
@@ -1,6 +1,6 @@
1
1
  import path from 'path';
2
2
  import { HUBSPOT_ACCOUNT_TYPES } from '@hubspot/local-dev-lib/constants/config';
3
- import { translateForLocalDev } from '@hubspot/project-parsing-lib';
3
+ import { translateForLocalDev } from '@hubspot/project-parsing-lib/translate';
4
4
  import { getAllConfigAccounts, getConfigAccountById, getConfigAccountEnvironment, } from '@hubspot/local-dev-lib/config';
5
5
  import { getValidEnv } from '@hubspot/local-dev-lib/environment';
6
6
  import { getServerPortByInstanceId } from '@hubspot/local-dev-lib/portManager';
@@ -31,7 +31,7 @@ vi.mock('@hubspot/ui-extensions-dev-server', () => ({
31
31
  },
32
32
  }));
33
33
  // Mock all dependencies
34
- vi.mock('@hubspot/project-parsing-lib');
34
+ vi.mock('@hubspot/project-parsing-lib/translate');
35
35
  vi.mock('@hubspot/local-dev-lib/config');
36
36
  vi.mock('@hubspot/local-dev-lib/environment');
37
37
  vi.mock('@hubspot/local-dev-lib/portManager');
@@ -15,7 +15,7 @@ import { PLATFORM_VERSIONS } from '@hubspot/local-dev-lib/constants/projects';
15
15
  import { commands } from '../../lang/en.js';
16
16
  import { uiLogger } from '../../lib/ui/logger.js';
17
17
  import { handleProjectCreationFlow, } from '../../lib/projects/create/index.js';
18
- import { getProjectMetadata, } from '@hubspot/project-parsing-lib/src/lib/project.js';
18
+ import { getProjectMetadata, } from '@hubspot/project-parsing-lib/projects';
19
19
  import { updateHsMetaFilesWithAutoGeneratedFields } from '../../lib/projects/components.js';
20
20
  import SpinniesManager from '../../lib/ui/SpinniesManager.js';
21
21
  const command = ['create', 'init'];
@@ -1,5 +1,5 @@
1
1
  import { ArgumentsCamelCase } from 'yargs';
2
- import { HsProfileFile } from '@hubspot/project-parsing-lib/src/lib/types.js';
2
+ import type { HsProfileFile } from '@hubspot/project-parsing-lib/profiles';
3
3
  import { ProjectDevArgs } from '../../../types/Yargs.js';
4
4
  import { ProjectConfig } from '../../../types/Projects.js';
5
5
  type UnifiedProjectDevFlowArgs = {
@@ -2,8 +2,7 @@ import path from 'path';
2
2
  import util from 'util';
3
3
  import { HUBSPOT_ACCOUNT_TYPES } from '@hubspot/local-dev-lib/constants/config';
4
4
  import { startPortManagerServer, stopPortManagerServer, } from '@hubspot/local-dev-lib/portManager';
5
- import { isTranslationError } from '@hubspot/project-parsing-lib/src/lib/errors.js';
6
- import { translateForLocalDev } from '@hubspot/project-parsing-lib';
5
+ import { isTranslationError, translateForLocalDev, } from '@hubspot/project-parsing-lib/translate';
7
6
  import { getConfigAccountEnvironment, getAllConfigAccounts, getConfigAccountById, } from '@hubspot/local-dev-lib/config';
8
7
  import { logError } from '../../../lib/errorHandlers/index.js';
9
8
  import { EXIT_CODES } from '../../../lib/enums/exitCodes.js';
@@ -1,7 +1,7 @@
1
1
  import path from 'path';
2
2
  import fs from 'fs';
3
3
  import { getConfigAccountIfExists, getAllConfigAccounts, } from '@hubspot/local-dev-lib/config';
4
- import { getAllHsProfiles, getHsProfileFilename, loadHsProfileFile, } from '@hubspot/project-parsing-lib';
4
+ import { getAllHsProfiles, getHsProfileFilename, loadHsProfileFile, } from '@hubspot/project-parsing-lib/profiles';
5
5
  import { trackCommandUsage } from '../../../lib/usageTracking.js';
6
6
  import { getProjectConfig } from '../../../lib/projects/config.js';
7
7
  import { uiAccountDescription } from '../../../lib/ui/index.js';
@@ -1,6 +1,6 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
- import { getAllHsProfiles, getHsProfileFilename, loadHsProfileFile, } from '@hubspot/project-parsing-lib';
3
+ import { getAllHsProfiles, getHsProfileFilename, loadHsProfileFile, } from '@hubspot/project-parsing-lib/profiles';
4
4
  import { fetchProject, deleteProject, } from '@hubspot/local-dev-lib/api/projects';
5
5
  import { getConfigAccountById } from '@hubspot/local-dev-lib/config';
6
6
  import { trackCommandUsage } from '../../../lib/usageTracking.js';
package/lang/en.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import chalk from 'chalk';
2
- import { mapToUserFriendlyName } from '@hubspot/project-parsing-lib';
2
+ import { mapToUserFriendlyName } from '@hubspot/project-parsing-lib/transform';
3
3
  import { PLATFORM_VERSIONS } from '@hubspot/local-dev-lib/constants/projects';
4
4
  import { PERSONAL_ACCESS_KEY_AUTH_METHOD } from '@hubspot/local-dev-lib/constants/auth';
5
5
  import { ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME, GLOBAL_CONFIG_PATH, DEFAULT_HUBSPOT_CONFIG_YAML_FILE_NAME, } from '@hubspot/local-dev-lib/constants/config';
@@ -1,12 +1,12 @@
1
1
  import path from 'path';
2
- import { loadHsProfileFile, getHsProfileFilename, getAllHsProfiles, } from '@hubspot/project-parsing-lib';
2
+ import { loadHsProfileFile, getHsProfileFilename, getAllHsProfiles, } from '@hubspot/project-parsing-lib/profiles';
3
3
  import { lib } from '../../lang/en.js';
4
4
  import { uiBetaTag, uiLine } from '../ui/index.js';
5
5
  import { uiLogger } from '../ui/logger.js';
6
6
  import { EXIT_CODES } from '../enums/exitCodes.js';
7
7
  import { logProfileHeader, logProfileFooter, loadProfile, exitIfUsingProfiles, } from '../projectProfiles.js';
8
8
  // Mock dependencies
9
- vi.mock('@hubspot/project-parsing-lib');
9
+ vi.mock('@hubspot/project-parsing-lib/profiles');
10
10
  vi.mock('../ui');
11
11
  vi.mock('../ui/logger');
12
12
  vi.mock('../../lang/en');
@@ -2,7 +2,7 @@ import { uiLogger } from '../../ui/logger.js';
2
2
  import { getCwd, sanitizeFileName } from '@hubspot/local-dev-lib/path';
3
3
  import { extractZipArchive } from '@hubspot/local-dev-lib/archive';
4
4
  import { getConfigAccountById } from '@hubspot/local-dev-lib/config';
5
- import { validateUid } from '@hubspot/project-parsing-lib';
5
+ import { validateUid } from '@hubspot/project-parsing-lib/uid';
6
6
  import { UNMIGRATABLE_REASONS } from '@hubspot/local-dev-lib/constants/projects';
7
7
  import { MIGRATION_STATUS } from '@hubspot/local-dev-lib/types/Migration';
8
8
  import { downloadProject } from '@hubspot/local-dev-lib/api/projects';
@@ -17,7 +17,7 @@ import { getUnmigratableReason, generateFilterAppsByProjectNameFunction, buildEr
17
17
  vi.mock('../../ui/logger.js');
18
18
  vi.mock('@hubspot/local-dev-lib/path');
19
19
  vi.mock('@hubspot/local-dev-lib/archive');
20
- vi.mock('@hubspot/project-parsing-lib');
20
+ vi.mock('@hubspot/project-parsing-lib/uid');
21
21
  vi.mock('@hubspot/local-dev-lib/api/projects');
22
22
  vi.mock('inquirer');
23
23
  vi.mock('../../prompts/promptUtils');
@@ -2,9 +2,9 @@ import path from 'path';
2
2
  import { getCwd, sanitizeFileName } from '@hubspot/local-dev-lib/path';
3
3
  import { extractZipArchive } from '@hubspot/local-dev-lib/archive';
4
4
  import chalk from 'chalk';
5
- import { validateUid } from '@hubspot/project-parsing-lib';
5
+ import { validateUid } from '@hubspot/project-parsing-lib/uid';
6
6
  import { UNMIGRATABLE_REASONS } from '@hubspot/local-dev-lib/constants/projects';
7
- import { mapToUserFacingType } from '@hubspot/project-parsing-lib/src/lib/transform.js';
7
+ import { mapToUserFacingType } from '@hubspot/project-parsing-lib/transform';
8
8
  import { MIGRATION_STATUS } from '@hubspot/local-dev-lib/types/Migration';
9
9
  import { downloadProject } from '@hubspot/local-dev-lib/api/projects';
10
10
  import { Separator } from '@inquirer/prompts';
@@ -1,4 +1,4 @@
1
- import { HsProfileFile } from '@hubspot/project-parsing-lib/src/lib/types.js';
1
+ import { type HsProfileFile } from '@hubspot/project-parsing-lib/profiles';
2
2
  import { ProjectConfig } from '../types/Projects.js';
3
3
  export declare function logProfileHeader(profileName: string): void;
4
4
  export declare function logProfileFooter(profile: HsProfileFile, includeVariables?: boolean): void;
@@ -1,5 +1,5 @@
1
1
  import path from 'path';
2
- import { loadHsProfileFile, getHsProfileFilename, getAllHsProfiles, } from '@hubspot/project-parsing-lib';
2
+ import { loadHsProfileFile, getHsProfileFilename, getAllHsProfiles, } from '@hubspot/project-parsing-lib/profiles';
3
3
  import { lib } from '../lang/en.js';
4
4
  import { uiBetaTag, uiLine } from './ui/index.js';
5
5
  import { uiLogger } from './ui/logger.js';
@@ -16,6 +16,7 @@ vi.mock('@hubspot/local-dev-lib/portManager', () => ({
16
16
  }));
17
17
  vi.mock('@hubspot/local-dev-lib/api/localDevAuth', () => ({
18
18
  fetchAppInstallationData: vi.fn().mockResolvedValue({}),
19
+ LOCALDEVAUTH_ACCESS_TOKEN_PATH: '/localdevauth/v1/auth/accessToken',
19
20
  }));
20
21
  vi.mock('@hubspot/local-dev-lib/api/appsDev', () => ({
21
22
  fetchAppMetadataByUid: vi.fn().mockResolvedValue({}),
@@ -1,5 +1,5 @@
1
1
  import path from 'path';
2
- import { translateForLocalDev } from '@hubspot/project-parsing-lib';
2
+ import { translateForLocalDev } from '@hubspot/project-parsing-lib/translate';
3
3
  import { handleProjectUpload } from '../upload.js';
4
4
  import { handleProjectDeploy } from '../deploy.js';
5
5
  import { getProjectConfig } from '../config.js';
@@ -20,7 +20,7 @@ vi.mock('@hubspot/ui-extensions-dev-server', () => ({
20
20
  },
21
21
  }));
22
22
  vi.mock('open');
23
- vi.mock('@hubspot/project-parsing-lib');
23
+ vi.mock('@hubspot/project-parsing-lib/translate');
24
24
  vi.mock('../upload');
25
25
  vi.mock('../deploy');
26
26
  vi.mock('../config');
@@ -1,17 +1,17 @@
1
1
  import fs from 'fs';
2
2
  import { handleComponentCollision, updateHsMetaFilesWithAutoGeneratedFields, } from '../components.js';
3
3
  import { uiLogger } from '../../ui/logger.js';
4
- import { coerceToValidUid } from '@hubspot/project-parsing-lib';
4
+ import { coerceToValidUid } from '@hubspot/project-parsing-lib/uid';
5
5
  import { fileExists } from '../../validation.js';
6
6
  vi.mock('fs');
7
7
  vi.mock('../../ui/logger.js');
8
8
  vi.mock('../../validation.js');
9
- vi.mock('@hubspot/project-parsing-lib', () => ({
9
+ vi.mock('@hubspot/project-parsing-lib/uid', () => ({
10
10
  coerceToValidUid: vi.fn(),
11
- metafileExtension: '.module.meta.json',
12
11
  }));
13
- vi.mock('@hubspot/project-parsing-lib/src/lib/constants.js', () => ({
14
- AppKey: 'app',
12
+ vi.mock('@hubspot/project-parsing-lib/constants', () => ({
13
+ METAFILE_EXTENSION: '.module.meta.json',
14
+ APP_KEY: 'app',
15
15
  }));
16
16
  const mockedFs = vi.mocked(fs);
17
17
  const mockCoerceToValidUid = vi.mocked(coerceToValidUid);
@@ -54,11 +54,6 @@ describe('lib/projects/components', () => {
54
54
  mockedFs.readFileSync.mockReturnValue(mockMetaContent);
55
55
  mockedFs.writeFileSync.mockImplementation(() => { });
56
56
  mockedFs.copyFileSync.mockImplementation(() => { });
57
- // Mock metafileExtension
58
- Object.defineProperty(require('@hubspot/project-parsing-lib'), 'metafileExtension', {
59
- value: '.module.meta.json',
60
- writable: false,
61
- });
62
57
  handleComponentCollision(collision);
63
58
  expect(mockedFs.readFileSync).toHaveBeenCalledWith('/src/path/component.module.meta.json', 'utf-8');
64
59
  expect(mockedFs.writeFileSync).toHaveBeenCalledWith('/dest/path/component-2.module.meta.json', expect.stringContaining('source-2.js'));
@@ -134,11 +129,6 @@ describe('lib/projects/components', () => {
134
129
  .mockReturnValueOnce(JSON.stringify(newPackageJson));
135
130
  mockedFs.writeFileSync.mockImplementation(() => { });
136
131
  mockedFs.copyFileSync.mockImplementation(() => { });
137
- // Mock metafileExtension
138
- Object.defineProperty(require('@hubspot/project-parsing-lib'), 'metafileExtension', {
139
- value: '.module.meta.json',
140
- writable: false,
141
- });
142
132
  const consoleSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
143
133
  handleComponentCollision(collision);
144
134
  // Verify source files are copied with new names
@@ -171,11 +161,6 @@ describe('lib/projects/components', () => {
171
161
  'package.json',
172
162
  ],
173
163
  };
174
- // Mock metafileExtension
175
- Object.defineProperty(require('@hubspot/project-parsing-lib'), 'metafileExtension', {
176
- value: '.meta.json',
177
- writable: false,
178
- });
179
164
  const mockMetaContent = '{}';
180
165
  mockedFs.readFileSync.mockReturnValue(mockMetaContent);
181
166
  mockedFs.writeFileSync.mockImplementation(() => { });
@@ -4,15 +4,14 @@ import { vi, describe, it, expect, beforeEach, afterEach } from 'vitest';
4
4
  import { downloadProject } from '@hubspot/local-dev-lib/api/projects';
5
5
  import { extractZipArchive } from '@hubspot/local-dev-lib/archive';
6
6
  import { isDeepEqual } from '@hubspot/local-dev-lib/isDeepEqual';
7
- import { translate } from '@hubspot/project-parsing-lib';
7
+ import { translate, } from '@hubspot/project-parsing-lib/translate';
8
8
  import { isDeployedProjectUpToDateWithLocal } from '../localDev/helpers/project.js';
9
9
  // Mock all external dependencies
10
10
  vi.mock('@hubspot/local-dev-lib/api/projects');
11
11
  vi.mock('@hubspot/local-dev-lib/archive');
12
- vi.mock('@hubspot/project-parsing-lib');
12
+ vi.mock('@hubspot/project-parsing-lib/translate');
13
13
  vi.mock('@hubspot/local-dev-lib/isDeepEqual');
14
14
  vi.mock('fs-extra');
15
- vi.mock('os');
16
15
  vi.mock('../../utils/isDeepEqual.js');
17
16
  describe('isDeployedProjectUpToDateWithLocal', () => {
18
17
  const mockProjectName = 'test-project';
@@ -52,7 +51,7 @@ describe('isDeployedProjectUpToDateWithLocal', () => {
52
51
  // Mock fs.remove
53
52
  fs.remove.mockResolvedValue(undefined);
54
53
  // Mock os.tmpdir
55
- os.tmpdir.mockReturnValue('/tmp');
54
+ vi.spyOn(os, 'tmpdir').mockReturnValue('/tmp');
56
55
  });
57
56
  afterEach(() => {
58
57
  vi.restoreAllMocks();
@@ -5,7 +5,7 @@ import { createV2App } from '../../create/v2.js';
5
5
  import { confirmPrompt } from '../../../prompts/promptUtils.js';
6
6
  import { projectAddPromptV2 } from '../../../prompts/projectAddPrompt.js';
7
7
  import { cloneGithubRepo } from '@hubspot/local-dev-lib/github';
8
- import { getProjectMetadata } from '@hubspot/project-parsing-lib/src/lib/project.js';
8
+ import { getProjectMetadata } from '@hubspot/project-parsing-lib/projects';
9
9
  import { trackCommandUsage } from '../../../usageTracking.js';
10
10
  import { updateHsMetaFilesWithAutoGeneratedFields } from '../../components.js';
11
11
  import { commands } from '../../../../lang/en.js';
@@ -17,7 +17,7 @@ vi.mock('../../../prompts/projectAddPrompt');
17
17
  vi.mock('@hubspot/local-dev-lib/github');
18
18
  vi.mock('../../../ui/logger.js');
19
19
  vi.mock('../../../ui/SpinniesManager.js');
20
- vi.mock('@hubspot/project-parsing-lib/src/lib/project');
20
+ vi.mock('@hubspot/project-parsing-lib/projects');
21
21
  vi.mock('../../../usageTracking');
22
22
  vi.mock('../../components.js');
23
23
  const mockedFs = vi.mocked(fs);
@@ -7,8 +7,8 @@ import fs from 'fs';
7
7
  import { projectAddPromptV2 } from '../../prompts/projectAddPrompt.js';
8
8
  import { HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, DEFAULT_PROJECT_TEMPLATE_BRANCH, } from '../../constants.js';
9
9
  import { updateHsMetaFilesWithAutoGeneratedFields, handleComponentCollision, } from '../components.js';
10
- import { getProjectMetadata, } from '@hubspot/project-parsing-lib/src/lib/project.js';
11
- import { AppKey } from '@hubspot/project-parsing-lib/src/lib/constants.js';
10
+ import { getProjectMetadata, } from '@hubspot/project-parsing-lib/projects';
11
+ import { APP_KEY as AppKey } from '@hubspot/project-parsing-lib/constants';
12
12
  import { cloneGithubRepo } from '@hubspot/local-dev-lib/github';
13
13
  import { debugError } from '../../errorHandlers/index.js';
14
14
  import { uiLogger } from '../../ui/logger.js';
@@ -1,5 +1,5 @@
1
1
  import { Collision } from '@hubspot/local-dev-lib/types/Archive';
2
- import { ProjectMetadata } from '@hubspot/project-parsing-lib/src/lib/project.js';
2
+ import type { ProjectMetadata } from '@hubspot/project-parsing-lib/projects';
3
3
  export declare function handleComponentCollision({ dest, src, collisions }: Collision): void;
4
4
  export declare function updateHsMetaFilesWithAutoGeneratedFields(projectName: string, hsMetaFilePaths: string[], existingUids?: string[], options?: {
5
5
  currentProjectMetadata?: ProjectMetadata;
@@ -1,9 +1,9 @@
1
1
  import path from 'path';
2
2
  import fs from 'fs';
3
- import { coerceToValidUid, metafileExtension, } from '@hubspot/project-parsing-lib';
3
+ import { coerceToValidUid } from '@hubspot/project-parsing-lib/uid';
4
+ import { METAFILE_EXTENSION as metafileExtension, APP_KEY as AppKey, } from '@hubspot/project-parsing-lib/constants';
4
5
  import { fileExists } from '../validation.js';
5
6
  import { uiLogger } from '../ui/logger.js';
6
- import { AppKey } from '@hubspot/project-parsing-lib/src/lib/constants.js';
7
7
  import { lib } from '../../lang/en.js';
8
8
  import { debugError } from '../errorHandlers/index.js';
9
9
  import { uiLink } from '../ui/index.js';
@@ -1,6 +1,6 @@
1
1
  import { Separator } from '@inquirer/prompts';
2
2
  import { ComponentTemplate, ComponentTemplateChoice, ProjectTemplateRepoConfig } from '../../../types/Projects.js';
3
- import { ProjectMetadata } from '@hubspot/project-parsing-lib/src/lib/project.js';
3
+ import type { ProjectMetadata } from '@hubspot/project-parsing-lib/projects';
4
4
  import { SelectProjectTemplatePromptResponse } from '../../prompts/selectProjectTemplatePrompt.js';
5
5
  export declare function createV2App(providedAuth: string | undefined, providedDistribution: string | undefined): Promise<{
6
6
  authType: string;
@@ -1,13 +1,13 @@
1
1
  import { marketplaceDistribution, oAuth, privateDistribution, staticAuth, EMPTY_PROJECT, PROJECT_WITH_APP, FEATURES, } from '../../constants.js';
2
2
  import { commands, lib } from '../../../lang/en.js';
3
3
  import { listPrompt } from '../../prompts/promptUtils.js';
4
+ import { APP_EVENTS_KEY as AppEventsKey, PAGES_KEY as PagesKey, } from '@hubspot/project-parsing-lib/constants';
4
5
  import { isV2Project } from '../platformVersion.js';
5
6
  import path from 'path';
6
7
  import { getConfigForPlatformVersion } from './legacy.js';
7
8
  import { logError } from '../../errorHandlers/index.js';
8
9
  import { EXIT_CODES } from '../../enums/exitCodes.js';
9
10
  import { hasFeature } from '../../hasFeature.js';
10
- import { AppEventsKey, PagesKey, } from '@hubspot/project-parsing-lib/src/lib/constants.js';
11
11
  export async function createV2App(providedAuth, providedDistribution) {
12
12
  let authType;
13
13
  if (providedAuth &&
@@ -1,4 +1,4 @@
1
- import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
1
+ import { type IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
2
2
  import { Project } from '@hubspot/local-dev-lib/types/Project';
3
3
  import LocalDevState from './LocalDevState.js';
4
4
  import LocalDevLogger from './LocalDevLogger.js';
@@ -1,4 +1,4 @@
1
- import { translateForLocalDev } from '@hubspot/project-parsing-lib';
1
+ import { translateForLocalDev, } from '@hubspot/project-parsing-lib/translate';
2
2
  import { hasLocalStateFlag } from '@hubspot/local-dev-lib/config';
3
3
  import { fetchProject } from '@hubspot/local-dev-lib/api/projects';
4
4
  import path from 'path';
@@ -1,4 +1,5 @@
1
- import { IntermediateRepresentationNodeLocalDev, HSProfileVariables } from '@hubspot/project-parsing-lib/src/lib/types.js';
1
+ import type { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
2
+ import type { HSProfileVariables } from '@hubspot/project-parsing-lib/profiles';
2
3
  import { Environment } from '@hubspot/local-dev-lib/types/Config';
3
4
  import { Project } from '@hubspot/local-dev-lib/types/Project';
4
5
  import { ProjectConfig } from '../../../types/Projects.js';
@@ -1,6 +1,6 @@
1
+ import { type IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
1
2
  import { Build } from '@hubspot/local-dev-lib/types/Build';
2
3
  import { Project } from '@hubspot/local-dev-lib/types/Project';
3
- import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
4
4
  import { ProjectConfig } from '../../../../types/Projects.js';
5
5
  export declare function createNewProjectForLocalDev(projectConfig: ProjectConfig, targetAccountId: number, shouldCreateWithoutConfirmation: boolean, hasPublicApps: boolean): Promise<Project>;
6
6
  export declare function createInitialBuildForNewProject(projectConfig: ProjectConfig, projectDir: string, targetAccountId: number, sendIR?: boolean, profile?: string): Promise<Build>;
@@ -6,7 +6,7 @@ import { downloadProject } from '@hubspot/local-dev-lib/api/projects';
6
6
  import { extractZipArchive } from '@hubspot/local-dev-lib/archive';
7
7
  import { sanitizeFileName } from '@hubspot/local-dev-lib/path';
8
8
  import { isDeepEqual } from '@hubspot/local-dev-lib/isDeepEqual';
9
- import { translate } from '@hubspot/project-parsing-lib';
9
+ import { translate, } from '@hubspot/project-parsing-lib/translate';
10
10
  import { isSpecifiedError } from '@hubspot/local-dev-lib/errors/index';
11
11
  import { PROJECT_ERROR_TYPES, PROJECT_BUILD_TEXT, PROJECT_DEPLOY_TEXT, } from '../../../constants.js';
12
12
  import { lib } from '../../../../lang/en.js';
@@ -8,8 +8,8 @@ import { getProjectBuildDetailUrl, getProjectDeployDetailUrl, getProjectActivity
8
8
  import { EXIT_CODES } from '../enums/exitCodes.js';
9
9
  import { lib } from '../../lang/en.js';
10
10
  import { uiLogger } from '../ui/logger.js';
11
- import { AppFunctionsPackageKey } from '@hubspot/project-parsing-lib/src/lib/constants.js';
12
- import { mapToInternalType } from '@hubspot/project-parsing-lib';
11
+ import { APP_FUNCTIONS_PACKAGE_KEY as AppFunctionsPackageKey } from '@hubspot/project-parsing-lib/constants';
12
+ import { mapToInternalType } from '@hubspot/project-parsing-lib/transform';
13
13
  const SPINNER_STATUS = {
14
14
  SPINNING: 'spinning',
15
15
  };
@@ -1,5 +1,5 @@
1
1
  import { ComponentTypes, Component, GenericComponentConfig, PublicAppComponentConfig, PrivateAppComponentConfig, AppCardComponentConfig } from '../../types/Projects.js';
2
- import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
2
+ import type { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
3
3
  import { AppIRNode } from '../../types/ProjectComponents.js';
4
4
  export declare const CONFIG_FILES: {
5
5
  [k in ComponentTypes]: string;
@@ -4,7 +4,8 @@ import fs from 'fs-extra';
4
4
  import path from 'path';
5
5
  import { uploadProject } from '@hubspot/local-dev-lib/api/projects';
6
6
  import { shouldIgnoreFile } from '@hubspot/local-dev-lib/ignoreRules';
7
- import { isTranslationError, translate, projectContainsHsMetaFiles, } from '@hubspot/project-parsing-lib';
7
+ import { isTranslationError, translate, } from '@hubspot/project-parsing-lib/translate';
8
+ import { projectContainsHsMetaFiles } from '@hubspot/project-parsing-lib/projects';
8
9
  import SpinniesManager from '../ui/SpinniesManager.js';
9
10
  import { uiAccountDescription } from '../ui/index.js';
10
11
  import { logError } from '../errorHandlers/index.js';
@@ -1,4 +1,4 @@
1
- import { getProjectThemeDetails, migrateThemes, } from '@hubspot/project-parsing-lib';
1
+ import { getProjectThemeDetails, migrateThemes, } from '@hubspot/project-parsing-lib/themes';
2
2
  import { getConfigAccountById } from '@hubspot/local-dev-lib/config';
3
3
  import { confirmPrompt } from '../../prompts/promptUtils.js';
4
4
  import { writeProjectConfig, } from '../../projects/config.js';
@@ -8,7 +8,7 @@ import { fetchMigrationApps } from '../../app/migrate.js';
8
8
  import { getHasMigratableThemes, validateMigrationAppsAndThemes, handleThemesMigration, migrateThemes2025_2, } from '../migrate.js';
9
9
  import { lib } from '../../../lang/en.js';
10
10
  vi.mock('../../ui/logger.js');
11
- vi.mock('@hubspot/project-parsing-lib');
11
+ vi.mock('@hubspot/project-parsing-lib/themes');
12
12
  vi.mock('../../prompts/promptUtils');
13
13
  vi.mock('../../projects/config');
14
14
  vi.mock('../../projects/ensureProjectExists');
@@ -1,5 +1,5 @@
1
1
  import path from 'path';
2
- import { migrateThemes, getProjectThemeDetails, } from '@hubspot/project-parsing-lib';
2
+ import { migrateThemes, getProjectThemeDetails, } from '@hubspot/project-parsing-lib/themes';
3
3
  import { writeProjectConfig } from '../projects/config.js';
4
4
  import { ensureProjectExists } from '../projects/ensureProjectExists.js';
5
5
  import SpinniesManager from '../ui/SpinniesManager.js';
@@ -2,7 +2,8 @@ import { Tool } from '../../types.js';
2
2
  import { z } from 'zod';
3
3
  import { formatTextContents } from '../../utils/content.js';
4
4
  import { absoluteCurrentWorkingDirectory } from './constants.js';
5
- import { getIntermediateRepresentationSchema, mapToInternalType, } from '@hubspot/project-parsing-lib';
5
+ import { getIntermediateRepresentationSchema } from '@hubspot/project-parsing-lib/schema';
6
+ import { mapToInternalType } from '@hubspot/project-parsing-lib/transform';
6
7
  import { isV2Project } from '../../../lib/projects/platformVersion.js';
7
8
  import { getConfigDefaultAccountIfExists } from '@hubspot/local-dev-lib/config';
8
9
  import { setupHubSpotConfig } from '../../utils/config.js';
@@ -1,6 +1,6 @@
1
1
  import path from 'path';
2
2
  import z from 'zod';
3
- import { getAllHsProfiles } from '@hubspot/project-parsing-lib';
3
+ import { getAllHsProfiles } from '@hubspot/project-parsing-lib/profiles';
4
4
  import { getProjectConfig } from '../../../lib/projects/config.js';
5
5
  import { Tool } from '../../types.js';
6
6
  import { runCommandInDir } from '../../utils/project.js';
@@ -1,9 +1,11 @@
1
1
  import { GetConfigValuesTool } from '../GetConfigValuesTool.js';
2
- import { getIntermediateRepresentationSchema, mapToInternalType, } from '@hubspot/project-parsing-lib';
2
+ import { getIntermediateRepresentationSchema } from '@hubspot/project-parsing-lib/schema';
3
+ import { mapToInternalType } from '@hubspot/project-parsing-lib/transform';
3
4
  import { getConfigDefaultAccountIfExists } from '@hubspot/local-dev-lib/config';
4
5
  import { mcpFeedbackRequest } from '../../../utils/feedbackTracking.js';
5
6
  vi.mock('@modelcontextprotocol/sdk/server/mcp.js');
6
- vi.mock('@hubspot/project-parsing-lib');
7
+ vi.mock('@hubspot/project-parsing-lib/schema');
8
+ vi.mock('@hubspot/project-parsing-lib/transform');
7
9
  vi.mock('@hubspot/local-dev-lib/config');
8
10
  vi.mock('../../../utils/toolUsageTracking');
9
11
  vi.mock('../../../utils/feedbackTracking');
@@ -1,10 +1,10 @@
1
1
  import { UploadProjectTools } from '../UploadProjectTools.js';
2
- import { getAllHsProfiles } from '@hubspot/project-parsing-lib';
2
+ import { getAllHsProfiles } from '@hubspot/project-parsing-lib/profiles';
3
3
  import { getProjectConfig } from '../../../../lib/projects/config.js';
4
4
  import { runCommandInDir } from '../../../utils/project.js';
5
5
  import { mcpFeedbackRequest } from '../../../utils/feedbackTracking.js';
6
6
  vi.mock('@modelcontextprotocol/sdk/server/mcp.js');
7
- vi.mock('@hubspot/project-parsing-lib');
7
+ vi.mock('@hubspot/project-parsing-lib/profiles');
8
8
  vi.mock('../../../../lib/projects/config.js');
9
9
  vi.mock('../../../utils/project');
10
10
  vi.mock('../../../utils/toolUsageTracking');
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@hubspot/cli",
3
- "version": "7.11.6-experimental.0",
3
+ "version": "7.11.7-experimental.0",
4
4
  "description": "The official CLI for developing on HubSpot",
5
5
  "license": "Apache-2.0",
6
6
  "repository": "https://github.com/HubSpot/hubspot-cli",
7
7
  "type": "module",
8
8
  "dependencies": {
9
- "@hubspot/local-dev-lib": "4.0.3-beta.0",
10
- "@hubspot/project-parsing-lib": "0.10.2",
9
+ "@hubspot/local-dev-lib": "4.0.4",
10
+ "@hubspot/project-parsing-lib": "0.0.33-experimental.0",
11
11
  "@hubspot/serverless-dev-runtime": "7.0.7",
12
12
  "@hubspot/theme-preview-dev-server": "0.0.12",
13
13
  "@hubspot/ui-extensions-dev-server": "1.0.1",
@@ -107,7 +107,7 @@
107
107
  }
108
108
  },
109
109
  "engines": {
110
- "node": ">=18"
110
+ "node": ">=20"
111
111
  },
112
112
  "bin": {
113
113
  "hs": "./bin/hs",
@@ -1,4 +1,5 @@
1
- import { HSProfileVariables, IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
1
+ import type { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
2
+ import type { HSProfileVariables } from '@hubspot/project-parsing-lib/profiles';
2
3
  import { Environment } from '@hubspot/local-dev-lib/types/Config';
3
4
  import { ValueOf } from '@hubspot/local-dev-lib/types/Utils';
4
5
  import { Project } from '@hubspot/local-dev-lib/types/Project';
@@ -1,4 +1,4 @@
1
- import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
1
+ import type { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/translate';
2
2
  import { IR_COMPONENT_TYPES, APP_DISTRIBUTION_TYPES, APP_AUTH_TYPES } from '../lib/constants.js';
3
3
  import { ValueOf } from '@hubspot/local-dev-lib/types/Utils';
4
4
  type AppDistributionType = ValueOf<typeof APP_DISTRIBUTION_TYPES>;