@sprucelabs/spruce-cli 18.3.1 → 19.0.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.
- package/CHANGELOG.md +12 -0
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.d.ts +1 -1
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js +20 -39
- package/build/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/PermissionStore.test.js.map +1 -1
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.d.ts +1 -0
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js +53 -18
- package/build/__tests__/behavioral/permissions/SyncingPermissions.test.js.map +1 -1
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.d.ts +2 -0
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js +75 -30
- package/build/__tests__/behavioral/upgrading/UpgradingWithListeners.test.js.map +1 -1
- package/build/__tests__/behavioral/views/WatchingSkillViews.test.js +1 -1
- package/build/__tests__/behavioral/views/WatchingSkillViews.test.js.map +1 -1
- package/build/__tests__/implementation/ActionExecuter2.test.js.map +1 -1
- package/build/__tests__/support/EventFaker.d.ts +1 -1
- package/build/__tests__/support/EventFaker.js.map +1 -1
- package/build/features/event/EventFeature.d.ts +1 -0
- package/build/features/event/EventFeature.js +90 -68
- package/build/features/event/EventFeature.js.map +1 -1
- package/build/features/eventContract/EventContractFeature.js +1 -4
- package/build/features/eventContract/EventContractFeature.js.map +1 -1
- package/build/features/eventContract/actions/PullAction.d.ts +1 -0
- package/build/features/eventContract/actions/PullAction.js +52 -9
- package/build/features/eventContract/actions/PullAction.js.map +1 -1
- package/build/features/permission/PermissionFeature.js +19 -9
- package/build/features/permission/PermissionFeature.js.map +1 -1
- package/build/features/permission/actions/SyncAction.d.ts +22 -3
- package/build/features/permission/actions/SyncAction.js +58 -16
- package/build/features/permission/actions/SyncAction.js.map +1 -1
- package/build/features/permission/stores/PermissionStore.d.ts +6 -2
- package/build/features/permission/stores/PermissionStore.js +25 -21
- package/build/features/permission/stores/PermissionStore.js.map +1 -1
- package/build/features/view/actions/WatchAction.js +1 -1
- package/build/features/view/actions/WatchAction.js.map +1 -1
- package/node_modules/@typescript-eslint/parser/LICENSE +5 -5
- package/node_modules/@typescript-eslint/parser/README.md +6 -300
- package/node_modules/@typescript-eslint/parser/dist/parser.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/parser/dist/parser.js +15 -17
- package/node_modules/@typescript-eslint/parser/dist/parser.js.map +1 -1
- package/node_modules/@typescript-eslint/parser/package.json +5 -5
- package/node_modules/@typescript-eslint/scope-manager/LICENSE +1 -1
- package/node_modules/@typescript-eslint/scope-manager/README.md +5 -117
- package/node_modules/@typescript-eslint/scope-manager/package.json +5 -5
- package/node_modules/@typescript-eslint/types/LICENSE +1 -1
- package/node_modules/@typescript-eslint/types/README.md +6 -11
- package/node_modules/@typescript-eslint/types/_ts3.4/dist/generated/ast-spec.d.ts +0 -6
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +0 -6
- package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/types/package.json +3 -3
- package/node_modules/@typescript-eslint/typescript-estree/LICENSE +5 -5
- package/node_modules/@typescript-eslint/typescript-estree/README.md +6 -379
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/create-program/{createWatchProgram.d.ts → getWatchProgramsForProjects.d.ts} +3 -4
- package/node_modules/@typescript-eslint/typescript-estree/_ts3.4/dist/index.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +3 -3
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/{createWatchProgram.d.ts → getWatchProgramsForProjects.d.ts} +3 -4
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.d.ts.map +1 -0
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/{createWatchProgram.js → getWatchProgramsForProjects.js} +4 -5
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js.map +1 -0
- package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/index.js +2 -2
- package/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +2 -2
- package/node_modules/@typescript-eslint/typescript-estree/package.json +5 -5
- package/node_modules/@typescript-eslint/visitor-keys/LICENSE +1 -1
- package/node_modules/@typescript-eslint/visitor-keys/README.md +6 -9
- package/node_modules/@typescript-eslint/visitor-keys/package.json +3 -3
- package/package.json +27 -27
- package/src/__tests__/behavioral/eventContract/PullingMercuryEventContract.test.ts +6 -18
- package/src/__tests__/behavioral/permissions/PermissionStore.test.ts +1 -1
- package/src/__tests__/behavioral/permissions/SyncingPermissions.test.ts +21 -3
- package/src/__tests__/behavioral/upgrading/UpgradingWithListeners.test.ts +13 -0
- package/src/__tests__/behavioral/views/WatchingSkillViews.test.ts +1 -1
- package/src/__tests__/implementation/ActionExecuter2.test.ts +0 -2
- package/src/__tests__/support/EventFaker.ts +1 -2
- package/src/features/event/EventFeature.ts +10 -4
- package/src/features/eventContract/EventContractFeature.ts +1 -6
- package/src/features/eventContract/actions/PullAction.ts +24 -4
- package/src/features/permission/PermissionFeature.ts +2 -7
- package/src/features/permission/actions/SyncAction.ts +42 -5
- package/src/features/permission/stores/PermissionStore.ts +25 -11
- package/src/features/view/actions/WatchAction.ts +1 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.d.ts.map +0 -1
- package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createWatchProgram.js.map +0 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { buildSchema, SchemaValues } from '@sprucelabs/schema'
|
|
2
2
|
import { diskUtil } from '@sprucelabs/spruce-skill-utils'
|
|
3
|
-
import actionUtil from '../../../utilities/action.utility'
|
|
4
3
|
import AbstractAction from '../../AbstractAction'
|
|
5
4
|
import { FeatureActionResponse } from '../../features.types'
|
|
6
5
|
|
|
@@ -30,7 +29,9 @@ export default class PullAction extends AbstractAction<PullOptionsSchema> {
|
|
|
30
29
|
const filename = 'events.contract.ts'
|
|
31
30
|
destination = diskUtil.resolvePath(this.cwd, destination, filename)
|
|
32
31
|
|
|
33
|
-
const { contracts } = await this.Store('event').fetchEventContracts(
|
|
32
|
+
const { contracts } = await this.Store('event').fetchEventContracts({
|
|
33
|
+
namespaces: ['core'],
|
|
34
|
+
})
|
|
34
35
|
let buildEventContractImport = `import { buildEventContract } from '@sprucelabs/mercury-types'
|
|
35
36
|
import '${'#spruce'}/permissions/permissions.types'`
|
|
36
37
|
|
|
@@ -50,10 +51,11 @@ export type CoreEventContract = ${contracts
|
|
|
50
51
|
|
|
51
52
|
diskUtil.writeFile(destination, contents)
|
|
52
53
|
|
|
53
|
-
const
|
|
54
|
+
const typesFiles = await this.syncPermissions()
|
|
54
55
|
|
|
55
|
-
return
|
|
56
|
+
return {
|
|
56
57
|
files: [
|
|
58
|
+
...typesFiles,
|
|
57
59
|
{
|
|
58
60
|
name: filename,
|
|
59
61
|
path: destination,
|
|
@@ -61,6 +63,24 @@ export type CoreEventContract = ${contracts
|
|
|
61
63
|
description: 'All your Mercury core events ready for testing!',
|
|
62
64
|
},
|
|
63
65
|
],
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
private async syncPermissions() {
|
|
70
|
+
const permissions = this.Store('permission')
|
|
71
|
+
|
|
72
|
+
const coreMap = await permissions.fetchContracts({
|
|
73
|
+
shouldSyncCorePermissions: true,
|
|
64
74
|
})
|
|
75
|
+
|
|
76
|
+
const heartwoodMap = await permissions.fetchContracts({
|
|
77
|
+
shouldSyncCorePermissions: true,
|
|
78
|
+
})
|
|
79
|
+
|
|
80
|
+
const typesFiles = await this.Writer('permission').writeTypesFile(
|
|
81
|
+
this.cwd,
|
|
82
|
+
{ ...coreMap, ...heartwoodMap }
|
|
83
|
+
)
|
|
84
|
+
return typesFiles
|
|
65
85
|
}
|
|
66
86
|
}
|
|
@@ -41,13 +41,8 @@ export default class PermissionFeature extends AbstractFeature {
|
|
|
41
41
|
const isInstalled = await this.features.isInstalled('permission')
|
|
42
42
|
const isSkillInstalled = await this.features.isInstalled('skill')
|
|
43
43
|
|
|
44
|
-
if (
|
|
45
|
-
isSkillInstalled
|
|
46
|
-
isInstalled &&
|
|
47
|
-
featureCode === 'node' &&
|
|
48
|
-
actionCode === 'upgrade'
|
|
49
|
-
) {
|
|
50
|
-
const combinedFile = await this.writePlugin()
|
|
44
|
+
if (isInstalled && featureCode === 'node' && actionCode === 'upgrade') {
|
|
45
|
+
const combinedFile = isSkillInstalled ? await this.writePlugin() : []
|
|
51
46
|
const results = await this.Action('permission', 'sync').execute({})
|
|
52
47
|
|
|
53
48
|
results.files = [...(results.files ?? []), ...combinedFile]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buildSchema } from '@sprucelabs/schema'
|
|
1
|
+
import { buildSchema, SchemaValues } from '@sprucelabs/schema'
|
|
2
2
|
import AbstractAction from '../../AbstractAction'
|
|
3
3
|
import { ActionOptions, FeatureActionResponse } from '../../features.types'
|
|
4
4
|
import PermissionStore from '../stores/PermissionStore'
|
|
@@ -18,9 +18,23 @@ export default class SyncAction extends AbstractAction<OptionsSchema> {
|
|
|
18
18
|
this.writer = this.Writer('permission')
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
public async execute(
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
public async execute(
|
|
22
|
+
options?: SyncPermissionsOptions
|
|
23
|
+
): Promise<FeatureActionResponse> {
|
|
24
|
+
const { shouldSyncCorePermissions } = this.validateAndNormalizeOptions(
|
|
25
|
+
options ?? {}
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
const permissions = this.permissions
|
|
29
|
+
const writer = this.writer
|
|
30
|
+
const cwd = this.cwd
|
|
31
|
+
|
|
32
|
+
const typesFiles = await writePermissionTypesFile({
|
|
33
|
+
permissions,
|
|
34
|
+
shouldSyncCorePermissions,
|
|
35
|
+
writer,
|
|
36
|
+
cwd,
|
|
37
|
+
})
|
|
24
38
|
|
|
25
39
|
const local = await this.permissions.loadLocalPermissions()
|
|
26
40
|
const combinedFiles = await this.writer.writeCombinedFile(this.cwd, {
|
|
@@ -36,7 +50,30 @@ export default class SyncAction extends AbstractAction<OptionsSchema> {
|
|
|
36
50
|
|
|
37
51
|
const schema = buildSchema({
|
|
38
52
|
id: 'syncPermissions',
|
|
39
|
-
fields: {
|
|
53
|
+
fields: {
|
|
54
|
+
shouldSyncCorePermissions: {
|
|
55
|
+
type: 'boolean',
|
|
56
|
+
},
|
|
57
|
+
},
|
|
40
58
|
})
|
|
41
59
|
|
|
42
60
|
type OptionsSchema = typeof schema
|
|
61
|
+
export type SyncPermissionsOptions = SchemaValues<OptionsSchema>
|
|
62
|
+
|
|
63
|
+
export async function writePermissionTypesFile(options: {
|
|
64
|
+
permissions: PermissionStore
|
|
65
|
+
shouldSyncCorePermissions: boolean | undefined
|
|
66
|
+
namespaces?: string[]
|
|
67
|
+
writer: PermissionWriter
|
|
68
|
+
cwd: string
|
|
69
|
+
}) {
|
|
70
|
+
const { permissions, shouldSyncCorePermissions, writer, cwd, namespaces } =
|
|
71
|
+
options
|
|
72
|
+
|
|
73
|
+
const map = await permissions.fetchContracts({
|
|
74
|
+
namespaces,
|
|
75
|
+
shouldSyncCorePermissions,
|
|
76
|
+
})
|
|
77
|
+
const typesFiles = await writer.writeTypesFile(cwd, map)
|
|
78
|
+
return typesFiles
|
|
79
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PermissionContract,
|
|
3
3
|
PermissionContractMap,
|
|
4
|
+
SpruceSchemas,
|
|
4
5
|
} from '@sprucelabs/mercury-types'
|
|
5
6
|
import { diskUtil } from '@sprucelabs/spruce-skill-utils'
|
|
6
7
|
import globby from 'globby'
|
|
@@ -33,9 +34,28 @@ export default class PermissionStore extends AbstractStore {
|
|
|
33
34
|
return imported
|
|
34
35
|
}
|
|
35
36
|
|
|
36
|
-
public async fetchContracts(
|
|
37
|
+
public async fetchContracts(options?: {
|
|
38
|
+
shouldSyncCorePermissions?: boolean
|
|
39
|
+
namespaces?: string[]
|
|
40
|
+
}) {
|
|
41
|
+
const { shouldSyncCorePermissions, namespaces } = options ?? {}
|
|
42
|
+
|
|
43
|
+
let target: ListPermContractsTargetAndPayload['target']
|
|
37
44
|
const client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })
|
|
38
|
-
|
|
45
|
+
|
|
46
|
+
if (!shouldSyncCorePermissions) {
|
|
47
|
+
const deps = this.Service('dependency').get()
|
|
48
|
+
target = {
|
|
49
|
+
namespaces: namespaces ?? deps.map((d) => d.namespace),
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const [{ permissionContracts }] = await client.emitAndFlattenResponses(
|
|
54
|
+
'list-permission-contracts::v2020_12_25',
|
|
55
|
+
{
|
|
56
|
+
target,
|
|
57
|
+
}
|
|
58
|
+
)
|
|
39
59
|
|
|
40
60
|
const local = await this.loadLocalPermissions()
|
|
41
61
|
const map: PermissionContractMap = local.reduce<PermissionContractMap>(
|
|
@@ -46,15 +66,6 @@ export default class PermissionStore extends AbstractStore {
|
|
|
46
66
|
{} as any
|
|
47
67
|
)
|
|
48
68
|
|
|
49
|
-
const [{ permissionContracts }] = await client.emitAndFlattenResponses(
|
|
50
|
-
'list-permission-contracts::v2020_12_25',
|
|
51
|
-
{
|
|
52
|
-
target: {
|
|
53
|
-
namespaces: deps.map((d) => d.namespace),
|
|
54
|
-
},
|
|
55
|
-
}
|
|
56
|
-
)
|
|
57
|
-
|
|
58
69
|
for (const result of permissionContracts) {
|
|
59
70
|
map[result.contract.id] = result.contract.permissions.map((p) => p.id)
|
|
60
71
|
}
|
|
@@ -68,3 +79,6 @@ export interface ImportedPermission {
|
|
|
68
79
|
permissions: string[]
|
|
69
80
|
path: string
|
|
70
81
|
}
|
|
82
|
+
|
|
83
|
+
export type ListPermContractsTargetAndPayload =
|
|
84
|
+
SpruceSchemas.Mercury.v2020_12_25.ListPermissionContractsEmitTargetAndPayload
|
|
@@ -24,7 +24,7 @@ export default class WatchAction extends AbstractAction<OptionsSchema> {
|
|
|
24
24
|
this.resetUi()
|
|
25
25
|
const commands = this.Service('command')
|
|
26
26
|
await commands.execute(
|
|
27
|
-
'
|
|
27
|
+
'SHOULD_WATCH_VIEWS=true MAXIMUM_LOG_PREFIXES_LENGTH=0 yarn boot',
|
|
28
28
|
{
|
|
29
29
|
onData: (data) => {
|
|
30
30
|
const line = this.popLastLine(data)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createWatchProgram.d.ts","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AA6CtD;;;GAGG;AACH,iBAAS,gBAAgB,IAAI,IAAI,CAOhC;AA0ED;;;;GAIG;AACH,iBAAS,sBAAsB,CAAC,aAAa,EAAE,aAAa,GAAG,EAAE,CAAC,OAAO,EAAE,CAuH1E;AAMD,iBAAS,kBAAkB,CACzB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,aAAa,GAC3B,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,cAAc,CAAC,CAuIzC;AAmJD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createWatchProgram.js","sourceRoot":"","sources":["../../src/create-program/createWatchProgram.ts"],"names":[],"mappings":"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"}
|