@sprucelabs/spruce-cli 14.28.1 → 14.28.5
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 +32 -0
- package/build/.spruce/events/events.contract.d.ts +4 -621
- package/build/.spruce/events/events.contract.js +1 -35
- package/build/.spruce/events/events.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.d.ts +0 -15
- package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js +2 -17
- package/build/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.d.ts +4 -21
- package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js +7 -24
- package/build/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.d.ts +1 -24
- package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js +5 -28
- package/build/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.d.ts +12 -0
- package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js +13 -1
- package/build/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.js.map +1 -1
- package/build/.spruce/schemas/schemas.types.d.ts +54 -1142
- package/build/.spruce/schemas/schemas.types.js.map +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js +1 -1
- package/build/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.js.map +1 -1
- package/build/.spruce/settings.json +6 -0
- package/build/__tests__/behavioral/BootingWithBadFiles.test.d.ts +2 -0
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js +72 -18
- package/build/__tests__/behavioral/BootingWithBadFiles.test.js.map +1 -1
- package/build/__tests__/behavioral/events/CreatingAListener.test.js +6 -6
- package/build/__tests__/behavioral/events/CreatingAListener.test.js.map +1 -1
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js +2 -2
- package/build/__tests__/behavioral/events/SkillEmitsBootEvents.test.js.map +1 -1
- package/build/features/event/actions/ListenAction.js +66 -54
- package/build/features/event/actions/ListenAction.js.map +1 -1
- package/build/features/event/stores/EventStore.js +24 -13
- package/build/features/event/stores/EventStore.js.map +1 -1
- package/build/features/sandbox/actions/SetupAction.js +1 -1
- package/build/features/sandbox/actions/SetupAction.js.map +1 -1
- package/build/schemas/v2020_07_22/listenEventOptions.builder.d.ts +1 -1
- package/build/schemas/v2020_07_22/listenEventOptions.builder.js +1 -1
- package/build/schemas/v2020_07_22/listenEventOptions.builder.js.map +1 -1
- package/package.json +31 -31
- package/src/.spruce/events/events.contract.ts +0 -102
- package/src/.spruce/events/heartwood/didRegisterSkillViews.v2021_02_11.contract.ts +0 -15
- package/src/.spruce/events/heartwood/generateUrl.v2021_02_11.contract.ts +4 -21
- package/src/.spruce/events/heartwood/getSkillViews.v2021_02_11.contract.ts +1 -24
- package/src/.spruce/events/heartwood/registerSkillViews.v2021_02_11.contract.ts +15 -0
- package/src/.spruce/schemas/schemas.types.ts +59 -1413
- package/src/.spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema.ts +1 -1
- package/src/.spruce/settings.json +6 -0
- package/src/__tests__/behavioral/BootingWithBadFiles.test.ts +12 -2
- package/src/__tests__/behavioral/events/CreatingAListener.test.ts +6 -6
- package/src/__tests__/behavioral/events/SkillEmitsBootEvents.test.ts +2 -2
- package/src/features/event/actions/ListenAction.ts +30 -20
- package/src/features/event/stores/EventStore.ts +7 -1
- package/src/features/sandbox/actions/SetupAction.ts +1 -1
- package/src/schemas/v2020_07_22/listenEventOptions.builder.ts +1 -1
- package/build/.spruce/events/appointments/didBookAppointments.v2021_06_23.contract.d.ts +0 -10
- package/build/.spruce/events/appointments/didBookAppointments.v2021_06_23.contract.js +0 -24
- package/build/.spruce/events/appointments/didBookAppointments.v2021_06_23.contract.js.map +0 -1
- package/build/.spruce/events/calendar/createCalendarEventType.v2021_05_19.contract.d.ts +0 -11
- package/build/.spruce/events/calendar/createCalendarEventType.v2021_05_19.contract.js +0 -27
- package/build/.spruce/events/calendar/createCalendarEventType.v2021_05_19.contract.js.map +0 -1
- package/build/.spruce/events/calendar/listCalendarEventTypes.v2021_05_19.contract.d.ts +0 -10
- package/build/.spruce/events/calendar/listCalendarEventTypes.v2021_05_19.contract.js +0 -24
- package/build/.spruce/events/calendar/listCalendarEventTypes.v2021_05_19.contract.js.map +0 -1
- package/build/.spruce/events/forms/convertPdfToForm.v2021_07_02.contract.d.ts +0 -46
- package/build/.spruce/events/forms/convertPdfToForm.v2021_07_02.contract.js +0 -62
- package/build/.spruce/events/forms/convertPdfToForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/convertPdfToSchemas.v2021_07_02.contract.d.ts +0 -46
- package/build/.spruce/events/forms/convertPdfToSchemas.v2021_07_02.contract.js +0 -62
- package/build/.spruce/events/forms/convertPdfToSchemas.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/createForm.v2021_07_02.contract.d.ts +0 -46
- package/build/.spruce/events/forms/createForm.v2021_07_02.contract.js +0 -62
- package/build/.spruce/events/forms/createForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/deleteCompletedForm.v2021_07_02.contract.d.ts +0 -46
- package/build/.spruce/events/forms/deleteCompletedForm.v2021_07_02.contract.js +0 -62
- package/build/.spruce/events/forms/deleteCompletedForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/didUpdateCompletedForm.v2021_07_02.contract.d.ts +0 -10
- package/build/.spruce/events/forms/didUpdateCompletedForm.v2021_07_02.contract.js +0 -24
- package/build/.spruce/events/forms/didUpdateCompletedForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/getCompletedForm.v2021_07_02.contract.d.ts +0 -40
- package/build/.spruce/events/forms/getCompletedForm.v2021_07_02.contract.js +0 -56
- package/build/.spruce/events/forms/getCompletedForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/listCompletedForms.v2021_07_02.contract.d.ts +0 -45
- package/build/.spruce/events/forms/listCompletedForms.v2021_07_02.contract.js +0 -59
- package/build/.spruce/events/forms/listCompletedForms.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/listForms.v2021_07_02.contract.d.ts +0 -80
- package/build/.spruce/events/forms/listForms.v2021_07_02.contract.js +0 -94
- package/build/.spruce/events/forms/listForms.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/forms/updateCompletedForm.v2021_07_02.contract.d.ts +0 -11
- package/build/.spruce/events/forms/updateCompletedForm.v2021_07_02.contract.js +0 -27
- package/build/.spruce/events/forms/updateCompletedForm.v2021_07_02.contract.js.map +0 -1
- package/build/.spruce/events/mySkill163362874854325100/myCoolEvent.v2021_01_22.contract.d.ts +0 -38
- package/build/.spruce/events/mySkill163362874854325100/myCoolEvent.v2021_01_22.contract.js +0 -48
- package/build/.spruce/events/mySkill163362874854325100/myCoolEvent.v2021_01_22.contract.js.map +0 -1
- package/build/.spruce/events/mySkill163362882591525586/myCoolEvent.v2021_01_22.contract.d.ts +0 -38
- package/build/.spruce/events/mySkill163362882591525586/myCoolEvent.v2021_01_22.contract.js +0 -48
- package/build/.spruce/events/mySkill163362882591525586/myCoolEvent.v2021_01_22.contract.js.map +0 -1
- package/build/.spruce/events/mySkill163459634973936127/myCoolEvent.v2021_01_22.contract.d.ts +0 -38
- package/build/.spruce/events/mySkill163459634973936127/myCoolEvent.v2021_01_22.contract.js +0 -48
- package/build/.spruce/events/mySkill163459634973936127/myCoolEvent.v2021_01_22.contract.js.map +0 -1
- package/build/.spruce/events/mySkill163493473102035607/myCoolEvent.v2021_01_22.contract.d.ts +0 -38
- package/build/.spruce/events/mySkill163493473102035607/myCoolEvent.v2021_01_22.contract.js +0 -48
- package/build/.spruce/events/mySkill163493473102035607/myCoolEvent.v2021_01_22.contract.js.map +0 -1
- package/build/.spruce/events/mySkill163493479880935941/myCoolEvent.v2021_01_22.contract.d.ts +0 -38
- package/build/.spruce/events/mySkill163493479880935941/myCoolEvent.v2021_01_22.contract.js +0 -48
- package/build/.spruce/events/mySkill163493479880935941/myCoolEvent.v2021_01_22.contract.js.map +0 -1
- package/build/.spruce/schemas/appointments/v2021_06_23/appointments.schema.d.ts +0 -3
- package/build/.spruce/schemas/appointments/v2021_06_23/appointments.schema.js +0 -28
- package/build/.spruce/schemas/appointments/v2021_06_23/appointments.schema.js.map +0 -1
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitPayload.schema.js +0 -36
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTarget.schema.d.ts +0 -3
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTarget.schema.js +0 -28
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTarget.schema.js.map +0 -1
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTargetAndPayload.schema.js +0 -56
- package/build/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitPayload.schema.js +0 -36
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeResponsePayload.schema.js +0 -35
- package/build/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/calendar/v2021_05_19/fullCalendarEventType.schema.d.ts +0 -3
- package/build/.spruce/schemas/calendar/v2021_05_19/fullCalendarEventType.schema.js +0 -54
- package/build/.spruce/schemas/calendar/v2021_05_19/fullCalendarEventType.schema.js.map +0 -1
- package/build/.spruce/schemas/calendar/v2021_05_19/listCalendarEventTypesResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/calendar/v2021_05_19/listCalendarEventTypesResponsePayload.schema.js +0 -37
- package/build/.spruce/schemas/calendar/v2021_05_19/listCalendarEventTypesResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/builtForm.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/builtForm.schema.js +0 -66
- package/build/.spruce/schemas/forms/v2021_07_02/builtForm.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormResponse.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormResponse.schema.js +0 -50
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormResponse.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormSourceForm.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormSourceForm.schema.js +0 -59
- package/build/.spruce/schemas/forms/v2021_07_02/completedFormSourceForm.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitPayload.schema.js +0 -30
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormResponsePayload.schema.js +0 -34
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToFormResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitPayload.schema.js +0 -30
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasResponsePayload.schema.js +0 -33
- package/build/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/createBuiltForm.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/createBuiltForm.schema.js +0 -52
- package/build/.spruce/schemas/forms/v2021_07_02/createBuiltForm.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/createFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/createFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/createFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/createFormResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/createFormResponsePayload.schema.js +0 -44
- package/build/.spruce/schemas/forms/v2021_07_02/createFormResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTarget.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTarget.schema.js +0 -29
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTarget.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormResponsePayload.schema.js +0 -29
- package/build/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/didSaveFormEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/didSaveFormEmitPayload.schema.js +0 -29
- package/build/.spruce/schemas/forms/v2021_07_02/didSaveFormEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/didUpdateCompletedFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/didUpdateCompletedFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/didUpdateCompletedFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTarget.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTarget.schema.js +0 -29
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTarget.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEventForm.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEventForm.schema.js +0 -78
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormEventForm.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormResponsePayload.schema.js +0 -35
- package/build/.spruce/schemas/forms/v2021_07_02/getCompletedFormResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/listCompletedFormsResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/listCompletedFormsResponsePayload.schema.js +0 -37
- package/build/.spruce/schemas/forms/v2021_07_02/listCompletedFormsResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsForm.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsForm.schema.js +0 -51
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsForm.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsResponsePayload.schema.js +0 -37
- package/build/.spruce/schemas/forms/v2021_07_02/listFormsResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitPayload.schema.js +0 -38
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitTargetAndPayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitTargetAndPayload.schema.js +0 -46
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitTargetAndPayload.schema.js.map +0 -1
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormResponsePayload.schema.d.ts +0 -3
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormResponsePayload.schema.js +0 -29
- package/build/.spruce/schemas/forms/v2021_07_02/updateCompletedFormResponsePayload.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/builderImportExportPage.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/builderImportExportPage.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/builderImportExportPage.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formBuilderImportExportObject.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formBuilderImportExportObject.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formBuilderImportExportObject.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formSection.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formSection.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formSection.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/list.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/list.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/list.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCell.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCell.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCell.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCellButton.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCellButton.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCellButton.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listRow.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listRow.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listRow.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listSelectInput.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listSelectInput.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listSelectInput.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listTextInput.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listTextInput.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listTextInput.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/selectInputChoice.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/selectInputChoice.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/selectInputChoice.schema.js.map +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/text.schema.d.ts +0 -1
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/text.schema.js +0 -14
- package/build/.spruce/schemas/heartwoodViewControllers/v2021_02_11/text.schema.js.map +0 -1
- package/src/.spruce/events/appointments/didBookAppointments.v2021_06_23.contract.ts +0 -15
- package/src/.spruce/events/calendar/createCalendarEventType.v2021_05_19.contract.ts +0 -17
- package/src/.spruce/events/calendar/listCalendarEventTypes.v2021_05_19.contract.ts +0 -16
- package/src/.spruce/events/forms/convertPdfToForm.v2021_07_02.contract.ts +0 -54
- package/src/.spruce/events/forms/convertPdfToSchemas.v2021_07_02.contract.ts +0 -55
- package/src/.spruce/events/forms/createForm.v2021_07_02.contract.ts +0 -54
- package/src/.spruce/events/forms/deleteCompletedForm.v2021_07_02.contract.ts +0 -55
- package/src/.spruce/events/forms/didUpdateCompletedForm.v2021_07_02.contract.ts +0 -15
- package/src/.spruce/events/forms/getCompletedForm.v2021_07_02.contract.ts +0 -48
- package/src/.spruce/events/forms/listCompletedForms.v2021_07_02.contract.ts +0 -54
- package/src/.spruce/events/forms/listForms.v2021_07_02.contract.ts +0 -90
- package/src/.spruce/events/forms/updateCompletedForm.v2021_07_02.contract.ts +0 -17
- package/src/.spruce/events/mySkill163362874854325100/myCoolEvent.v2021_01_22.contract.ts +0 -45
- package/src/.spruce/events/mySkill163362882591525586/myCoolEvent.v2021_01_22.contract.ts +0 -45
- package/src/.spruce/events/mySkill163459634973936127/myCoolEvent.v2021_01_22.contract.ts +0 -45
- package/src/.spruce/events/mySkill163493473102035607/myCoolEvent.v2021_01_22.contract.ts +0 -45
- package/src/.spruce/events/mySkill163493479880935941/myCoolEvent.v2021_01_22.contract.ts +0 -45
- package/src/.spruce/schemas/appointments/v2021_06_23/appointments.schema.ts +0 -22
- package/src/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitPayload.schema.ts +0 -24
- package/src/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTarget.schema.ts +0 -22
- package/src/.spruce/schemas/appointments/v2021_06_23/didBookAppointmentsEmitTargetAndPayload.schema.ts +0 -36
- package/src/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitPayload.schema.ts +0 -29
- package/src/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/calendar/v2021_05_19/createCalendarEventTypeResponsePayload.schema.ts +0 -23
- package/src/.spruce/schemas/calendar/v2021_05_19/fullCalendarEventType.schema.ts +0 -39
- package/src/.spruce/schemas/calendar/v2021_05_19/listCalendarEventTypesResponsePayload.schema.ts +0 -25
- package/src/.spruce/schemas/forms/v2021_07_02/builtForm.schema.ts +0 -50
- package/src/.spruce/schemas/forms/v2021_07_02/completedFormResponse.schema.ts +0 -41
- package/src/.spruce/schemas/forms/v2021_07_02/completedFormSourceForm.schema.ts +0 -44
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitPayload.schema.ts +0 -24
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToFormResponsePayload.schema.ts +0 -22
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitPayload.schema.ts +0 -24
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/convertPdfToSchemasResponsePayload.schema.ts +0 -25
- package/src/.spruce/schemas/forms/v2021_07_02/createBuiltForm.schema.ts +0 -38
- package/src/.spruce/schemas/forms/v2021_07_02/createFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/createFormResponsePayload.schema.ts +0 -29
- package/src/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTarget.schema.ts +0 -23
- package/src/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/deleteCompletedFormResponsePayload.schema.ts +0 -23
- package/src/.spruce/schemas/forms/v2021_07_02/didSaveFormEmitPayload.schema.ts +0 -23
- package/src/.spruce/schemas/forms/v2021_07_02/didUpdateCompletedFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTarget.schema.ts +0 -23
- package/src/.spruce/schemas/forms/v2021_07_02/getCompletedFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/getCompletedFormEventForm.schema.ts +0 -58
- package/src/.spruce/schemas/forms/v2021_07_02/getCompletedFormResponsePayload.schema.ts +0 -23
- package/src/.spruce/schemas/forms/v2021_07_02/listCompletedFormsResponsePayload.schema.ts +0 -25
- package/src/.spruce/schemas/forms/v2021_07_02/listFormsForm.schema.ts +0 -42
- package/src/.spruce/schemas/forms/v2021_07_02/listFormsResponsePayload.schema.ts +0 -25
- package/src/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitPayload.schema.ts +0 -29
- package/src/.spruce/schemas/forms/v2021_07_02/updateCompletedFormEmitTargetAndPayload.schema.ts +0 -30
- package/src/.spruce/schemas/forms/v2021_07_02/updateCompletedFormResponsePayload.schema.ts +0 -23
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/builderImportExportPage.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formBuilderImportExportObject.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/formSection.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/list.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCell.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listCellButton.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listRow.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listSelectInput.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/listTextInput.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/selectInputChoice.schema.ts +0 -1
- package/src/.spruce/schemas/heartwoodViewControllers/v2021_02_11/text.schema.ts +0 -1
|
@@ -82,7 +82,9 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
82
82
|
key: "execute",
|
|
83
83
|
value: function () {
|
|
84
84
|
var _execute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(options) {
|
|
85
|
-
var
|
|
85
|
+
var _this2 = this;
|
|
86
|
+
|
|
87
|
+
var normalizedOptions, response, listenerDestinationDir, versionOptions, eventName, namespace, schemaTypesLookupDir, contractDestinationDir, eventStore, skill, namespacesForFetch, _ref, contracts, _this$mapContractsToS, eventChoicesByNamespace, fqen, _eventNameUtil$split, version, isValidEvent, resolvedDestination, resolvedVersion, resolvedSchemaTypesLookupDir, isSkillEvent, emitPayloadSchemaTemplateItem, responsePayloadSchemaTemplateItem, builder, templateItems, generator, results, syncOptions, syncResults;
|
|
86
88
|
|
|
87
89
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
88
90
|
while (1) {
|
|
@@ -91,7 +93,7 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
91
93
|
normalizedOptions = this.validateAndNormalizeOptions(options);
|
|
92
94
|
_context.prev = 1;
|
|
93
95
|
response = {};
|
|
94
|
-
listenerDestinationDir = normalizedOptions.listenerDestinationDir, versionOptions = normalizedOptions.version, eventName = normalizedOptions.eventName,
|
|
96
|
+
listenerDestinationDir = normalizedOptions.listenerDestinationDir, versionOptions = normalizedOptions.version, eventName = normalizedOptions.eventName, namespace = normalizedOptions.namespace, schemaTypesLookupDir = normalizedOptions.schemaTypesLookupDir, contractDestinationDir = normalizedOptions.contractDestinationDir;
|
|
95
97
|
this.ui.startLoading('Loading event contracts...');
|
|
96
98
|
eventStore = this.Store('event');
|
|
97
99
|
_context.next = 8;
|
|
@@ -99,109 +101,119 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
99
101
|
|
|
100
102
|
case 8:
|
|
101
103
|
skill = _context.sent;
|
|
104
|
+
namespacesForFetch = namespace && namespace !== 'skill' ? [namespace] : undefined;
|
|
102
105
|
|
|
103
106
|
if (!skill.slug) {
|
|
104
|
-
_context.next =
|
|
107
|
+
_context.next = 16;
|
|
105
108
|
break;
|
|
106
109
|
}
|
|
107
110
|
|
|
108
|
-
_context.next =
|
|
111
|
+
_context.next = 13;
|
|
109
112
|
return eventStore.fetchEventContracts({
|
|
110
|
-
localNamespace: skill.slug
|
|
113
|
+
localNamespace: skill.slug,
|
|
114
|
+
namespaces: namespacesForFetch,
|
|
115
|
+
didUpdateHandler: function didUpdateHandler(msg) {
|
|
116
|
+
return _this2.ui.startLoading(msg);
|
|
117
|
+
}
|
|
111
118
|
});
|
|
112
119
|
|
|
113
|
-
case
|
|
120
|
+
case 13:
|
|
114
121
|
_context.t0 = _context.sent;
|
|
115
|
-
_context.next =
|
|
122
|
+
_context.next = 19;
|
|
116
123
|
break;
|
|
117
124
|
|
|
118
|
-
case
|
|
119
|
-
_context.next =
|
|
120
|
-
return eventStore.fetchEventContracts(
|
|
125
|
+
case 16:
|
|
126
|
+
_context.next = 18;
|
|
127
|
+
return eventStore.fetchEventContracts({
|
|
128
|
+
namespaces: namespacesForFetch,
|
|
129
|
+
didUpdateHandler: function didUpdateHandler(msg) {
|
|
130
|
+
return _this2.ui.startLoading(msg);
|
|
131
|
+
}
|
|
132
|
+
});
|
|
121
133
|
|
|
122
|
-
case
|
|
134
|
+
case 18:
|
|
123
135
|
_context.t0 = _context.sent;
|
|
124
136
|
|
|
125
|
-
case
|
|
137
|
+
case 19:
|
|
126
138
|
_ref = _context.t0;
|
|
127
139
|
contracts = _ref.contracts;
|
|
128
140
|
this.ui.stopLoading();
|
|
129
141
|
|
|
130
|
-
if (
|
|
131
|
-
_context.next =
|
|
142
|
+
if (namespace) {
|
|
143
|
+
_context.next = 26;
|
|
132
144
|
break;
|
|
133
145
|
}
|
|
134
146
|
|
|
135
|
-
_context.next =
|
|
147
|
+
_context.next = 25;
|
|
136
148
|
return this.collectNamespace(contracts);
|
|
137
149
|
|
|
138
|
-
case 24:
|
|
139
|
-
eventNamespace = _context.sent;
|
|
140
|
-
|
|
141
150
|
case 25:
|
|
151
|
+
namespace = _context.sent;
|
|
152
|
+
|
|
153
|
+
case 26:
|
|
142
154
|
_this$mapContractsToS = this.mapContractsToSelectChoices(contracts), eventChoicesByNamespace = _this$mapContractsToS.eventChoicesByNamespace;
|
|
143
155
|
|
|
144
|
-
if (eventChoicesByNamespace[
|
|
145
|
-
_context.next =
|
|
156
|
+
if (eventChoicesByNamespace[namespace]) {
|
|
157
|
+
_context.next = 29;
|
|
146
158
|
break;
|
|
147
159
|
}
|
|
148
160
|
|
|
149
161
|
throw new _schema.SchemaError({
|
|
150
162
|
code: 'INVALID_PARAMETERS',
|
|
151
|
-
friendlyMessage: "".concat(
|
|
152
|
-
parameters: ['
|
|
163
|
+
friendlyMessage: "".concat(namespace, " is not a valid event namespace. Try: \n\n").concat(Object.keys(eventChoicesByNamespace).join('\n')),
|
|
164
|
+
parameters: ['namespace']
|
|
153
165
|
});
|
|
154
166
|
|
|
155
|
-
case
|
|
167
|
+
case 29:
|
|
156
168
|
if (eventName) {
|
|
157
|
-
_context.next =
|
|
169
|
+
_context.next = 33;
|
|
158
170
|
break;
|
|
159
171
|
}
|
|
160
172
|
|
|
161
|
-
_context.next =
|
|
162
|
-
return this.collectEvent(contracts,
|
|
173
|
+
_context.next = 32;
|
|
174
|
+
return this.collectEvent(contracts, namespace);
|
|
163
175
|
|
|
164
|
-
case
|
|
176
|
+
case 32:
|
|
165
177
|
eventName = _context.sent;
|
|
166
178
|
|
|
167
|
-
case
|
|
179
|
+
case 33:
|
|
168
180
|
fqen = _spruceEventUtils.eventNameUtil.join({
|
|
169
181
|
eventName: eventName,
|
|
170
|
-
eventNamespace:
|
|
182
|
+
eventNamespace: namespace,
|
|
171
183
|
version: versionOptions
|
|
172
184
|
});
|
|
173
185
|
_eventNameUtil$split = _spruceEventUtils.eventNameUtil.split(fqen), version = _eventNameUtil$split.version;
|
|
174
|
-
isValidEvent = !!eventChoicesByNamespace[
|
|
186
|
+
isValidEvent = !!eventChoicesByNamespace[namespace].find(function (e) {
|
|
175
187
|
return e.value === eventName || e.value === fqen;
|
|
176
188
|
});
|
|
177
189
|
|
|
178
190
|
if (isValidEvent) {
|
|
179
|
-
_context.next =
|
|
191
|
+
_context.next = 38;
|
|
180
192
|
break;
|
|
181
193
|
}
|
|
182
194
|
|
|
183
195
|
throw new _schema.SchemaError({
|
|
184
196
|
code: 'INVALID_PARAMETERS',
|
|
185
|
-
friendlyMessage: "".concat(eventName, " is not a valid event . Try: \n\n").concat(eventChoicesByNamespace[
|
|
197
|
+
friendlyMessage: "".concat(eventName, " is not a valid event . Try: \n\n").concat(eventChoicesByNamespace[namespace].map(function (i) {
|
|
186
198
|
return i.value;
|
|
187
199
|
}).join('\n')),
|
|
188
200
|
parameters: ['eventName']
|
|
189
201
|
});
|
|
190
202
|
|
|
191
|
-
case
|
|
203
|
+
case 38:
|
|
192
204
|
resolvedDestination = _spruceSkillUtils.diskUtil.resolvePath(this.cwd, listenerDestinationDir);
|
|
193
|
-
_context.next =
|
|
205
|
+
_context.next = 41;
|
|
194
206
|
return this.resolveVersion(version, resolvedDestination);
|
|
195
207
|
|
|
196
|
-
case
|
|
208
|
+
case 41:
|
|
197
209
|
resolvedVersion = _context.sent;
|
|
198
210
|
resolvedSchemaTypesLookupDir = _spruceSkillUtils.diskUtil.resolvePath(this.cwd, schemaTypesLookupDir);
|
|
199
|
-
isSkillEvent =
|
|
211
|
+
isSkillEvent = namespace !== SKILL_EVENT_NAMESPACE;
|
|
200
212
|
|
|
201
213
|
if (isSkillEvent) {
|
|
202
214
|
builder = new _EventTemplateItemBuilder["default"]();
|
|
203
215
|
templateItems = builder.buildEventTemplateItemForName(contracts, _spruceEventUtils.eventNameUtil.join({
|
|
204
|
-
eventNamespace:
|
|
216
|
+
eventNamespace: namespace,
|
|
205
217
|
eventName: eventName,
|
|
206
218
|
version: resolvedVersion
|
|
207
219
|
}));
|
|
@@ -210,14 +222,14 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
210
222
|
}
|
|
211
223
|
|
|
212
224
|
generator = this.Writer('event');
|
|
213
|
-
_context.next =
|
|
225
|
+
_context.next = 48;
|
|
214
226
|
return generator.writeListener(resolvedDestination, _objectSpread(_objectSpread({}, normalizedOptions), {}, {
|
|
215
227
|
version: resolvedVersion,
|
|
216
228
|
eventName: eventName,
|
|
217
|
-
eventNamespace:
|
|
229
|
+
eventNamespace: namespace,
|
|
218
230
|
fullyQualifiedEventName: _spruceEventUtils.eventNameUtil.join({
|
|
219
231
|
eventName: eventName,
|
|
220
|
-
eventNamespace:
|
|
232
|
+
eventNamespace: namespace,
|
|
221
233
|
version: resolvedVersion
|
|
222
234
|
}),
|
|
223
235
|
emitPayloadSchemaTemplateItem: emitPayloadSchemaTemplateItem,
|
|
@@ -226,39 +238,39 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
226
238
|
schemaTypesLookupDir: resolvedSchemaTypesLookupDir
|
|
227
239
|
}));
|
|
228
240
|
|
|
229
|
-
case
|
|
241
|
+
case 48:
|
|
230
242
|
results = _context.sent;
|
|
231
243
|
response.files = results;
|
|
232
244
|
|
|
233
245
|
if (!isSkillEvent) {
|
|
234
|
-
_context.next =
|
|
246
|
+
_context.next = 56;
|
|
235
247
|
break;
|
|
236
248
|
}
|
|
237
249
|
|
|
238
250
|
syncOptions = (0, _schema.normalizeSchemaValues)(_syncEventOptions["default"], options);
|
|
239
|
-
_context.next =
|
|
251
|
+
_context.next = 54;
|
|
240
252
|
return this.Action('event', 'sync').execute(syncOptions);
|
|
241
253
|
|
|
242
|
-
case
|
|
254
|
+
case 54:
|
|
243
255
|
syncResults = _context.sent;
|
|
244
256
|
response = _action["default"].mergeActionResults(syncResults, response);
|
|
245
257
|
|
|
246
|
-
case
|
|
258
|
+
case 56:
|
|
247
259
|
return _context.abrupt("return", response);
|
|
248
260
|
|
|
249
|
-
case
|
|
250
|
-
_context.prev =
|
|
261
|
+
case 59:
|
|
262
|
+
_context.prev = 59;
|
|
251
263
|
_context.t1 = _context["catch"](1);
|
|
252
264
|
return _context.abrupt("return", {
|
|
253
265
|
errors: [_context.t1]
|
|
254
266
|
});
|
|
255
267
|
|
|
256
|
-
case
|
|
268
|
+
case 62:
|
|
257
269
|
case "end":
|
|
258
270
|
return _context.stop();
|
|
259
271
|
}
|
|
260
272
|
}
|
|
261
|
-
}, _callee, this, [[1,
|
|
273
|
+
}, _callee, this, [[1, 59]]);
|
|
262
274
|
}));
|
|
263
275
|
|
|
264
276
|
function execute(_x) {
|
|
@@ -270,13 +282,13 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
270
282
|
}, {
|
|
271
283
|
key: "collectEvent",
|
|
272
284
|
value: function () {
|
|
273
|
-
var _collectEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(contracts,
|
|
285
|
+
var _collectEvent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(contracts, namespace) {
|
|
274
286
|
var eventChoices, eventName;
|
|
275
287
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
276
288
|
while (1) {
|
|
277
289
|
switch (_context2.prev = _context2.next) {
|
|
278
290
|
case 0:
|
|
279
|
-
eventChoices = this.mapContractsToSelectChoices(contracts).eventChoicesByNamespace[
|
|
291
|
+
eventChoices = this.mapContractsToSelectChoices(contracts).eventChoicesByNamespace[namespace];
|
|
280
292
|
_context2.next = 3;
|
|
281
293
|
return this.ui.prompt({
|
|
282
294
|
type: 'select',
|
|
@@ -309,7 +321,7 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
309
321
|
key: "collectNamespace",
|
|
310
322
|
value: function () {
|
|
311
323
|
var _collectNamespace = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(contracts) {
|
|
312
|
-
var _this$mapContractsToS2, namespaceChoices,
|
|
324
|
+
var _this$mapContractsToS2, namespaceChoices, namespace;
|
|
313
325
|
|
|
314
326
|
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
315
327
|
while (1) {
|
|
@@ -327,8 +339,8 @@ var ListenAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
327
339
|
});
|
|
328
340
|
|
|
329
341
|
case 3:
|
|
330
|
-
|
|
331
|
-
return _context3.abrupt("return",
|
|
342
|
+
namespace = _context3.sent;
|
|
343
|
+
return _context3.abrupt("return", namespace);
|
|
332
344
|
|
|
333
345
|
case 5:
|
|
334
346
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/features/event/actions/ListenAction.ts"],"names":["SKILL_EVENT_NAMESPACE","ListenAction","eventListenActionSchema","options","normalizedOptions","validateAndNormalizeOptions","response","listenerDestinationDir","versionOptions","version","eventName","eventNamespace","schemaTypesLookupDir","contractDestinationDir","ui","startLoading","eventStore","Store","loadCurrentSkill","skill","slug","fetchEventContracts","localNamespace","contracts","stopLoading","collectNamespace","mapContractsToSelectChoices","eventChoicesByNamespace","SchemaError","code","friendlyMessage","Object","keys","join","parameters","collectEvent","fqen","eventNameUtil","split","isValidEvent","find","e","value","map","i","resolvedDestination","diskUtil","resolvePath","cwd","resolveVersion","resolvedVersion","resolvedSchemaTypesLookupDir","isSkillEvent","builder","EventTemplateItemBuilder","templateItems","buildEventTemplateItemForName","emitPayloadSchemaTemplateItem","responsePayloadSchemaTemplateItem","generator","Writer","writeListener","fullyQualifiedEventName","results","files","syncOptions","syncEventActionSchema","Action","execute","syncResults","actionUtil","mergeActionResults","errors","eventChoices","prompt","type","label","isRequired","choices","namespaceChoices","forEach","contract","namedSignatures","eventContractUtil","getNamedEventSignatures","namedSig","namespace","MERCURY_API_NAMESPACE","o","push","namesUtil","toPascal","AbstractAction"],"mappings":"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","sourcesContent":["import { EventContract } from '@sprucelabs/mercury-types'\nimport {\n\tnormalizeSchemaValues,\n\tSchemaError,\n\tSchemaTemplateItem,\n\tSelectChoice,\n} from '@sprucelabs/schema'\nimport {\n\teventContractUtil,\n\teventNameUtil,\n} from '@sprucelabs/spruce-event-utils'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tMERCURY_API_NAMESPACE,\n} from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport eventListenActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport EventTemplateItemBuilder from '../../../templateItemBuilders/EventTemplateItemBuilder'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst SKILL_EVENT_NAMESPACE = 'skill'\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.ListenEventOptionsSchema\nexport default class ListenAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = eventListenActionSchema\n\tpublic invocationMessage = 'Creating event listener... 🜒'\n\tpublic commandAliases = ['listen.event', 'create.listener']\n\n\tpublic async execute(\n\t\toptions: SpruceSchemas.SpruceCli.v2020_07_22.ListenEventOptions\n\t): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\ttry {\n\t\t\tlet response: FeatureActionResponse = {}\n\n\t\t\tlet {\n\t\t\t\tlistenerDestinationDir,\n\t\t\t\tversion: versionOptions,\n\t\t\t\teventName,\n\t\t\t\teventNamespace,\n\t\t\t\tschemaTypesLookupDir,\n\t\t\t\tcontractDestinationDir,\n\t\t\t} = normalizedOptions\n\n\t\t\tthis.ui.startLoading('Loading event contracts...')\n\n\t\t\tconst eventStore = this.Store('event')\n\n\t\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\t\tconst { contracts } = skill.slug\n\t\t\t\t? await eventStore.fetchEventContracts({ localNamespace: skill.slug })\n\t\t\t\t: await eventStore.fetchEventContracts()\n\n\t\t\tthis.ui.stopLoading()\n\n\t\t\tif (!eventNamespace) {\n\t\t\t\teventNamespace = await this.collectNamespace(contracts)\n\t\t\t}\n\n\t\t\tconst { eventChoicesByNamespace } =\n\t\t\t\tthis.mapContractsToSelectChoices(contracts)\n\n\t\t\tif (!eventChoicesByNamespace[eventNamespace]) {\n\t\t\t\tthrow new SchemaError({\n\t\t\t\t\tcode: 'INVALID_PARAMETERS',\n\t\t\t\t\tfriendlyMessage: `${eventNamespace} is not a valid event namespace. Try: \\n\\n${Object.keys(\n\t\t\t\t\t\teventChoicesByNamespace\n\t\t\t\t\t).join('\\n')}`,\n\t\t\t\t\tparameters: ['eventNamespace'],\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tif (!eventName) {\n\t\t\t\teventName = await this.collectEvent(contracts, eventNamespace)\n\t\t\t}\n\n\t\t\tconst fqen = eventNameUtil.join({\n\t\t\t\teventName,\n\t\t\t\teventNamespace,\n\t\t\t\tversion: versionOptions,\n\t\t\t})\n\n\t\t\tlet { version } = eventNameUtil.split(fqen)\n\n\t\t\tconst isValidEvent = !!eventChoicesByNamespace[eventNamespace].find(\n\t\t\t\t(e) => e.value === eventName || e.value === fqen\n\t\t\t)\n\n\t\t\tif (!isValidEvent) {\n\t\t\t\tthrow new SchemaError({\n\t\t\t\t\tcode: 'INVALID_PARAMETERS',\n\t\t\t\t\tfriendlyMessage: `${eventName} is not a valid event . Try: \\n\\n${eventChoicesByNamespace[\n\t\t\t\t\t\teventNamespace\n\t\t\t\t\t]\n\t\t\t\t\t\t.map((i) => i.value)\n\t\t\t\t\t\t.join('\\n')}`,\n\t\t\t\t\tparameters: ['eventName'],\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\tlistenerDestinationDir\n\t\t\t)\n\n\t\t\tconst resolvedVersion = await this.resolveVersion(\n\t\t\t\tversion,\n\t\t\t\tresolvedDestination\n\t\t\t)\n\n\t\t\tconst resolvedSchemaTypesLookupDir = diskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\tschemaTypesLookupDir\n\t\t\t)\n\n\t\t\tconst isSkillEvent = eventNamespace !== SKILL_EVENT_NAMESPACE\n\n\t\t\tlet emitPayloadSchemaTemplateItem: SchemaTemplateItem | undefined\n\t\t\tlet responsePayloadSchemaTemplateItem: SchemaTemplateItem | undefined\n\n\t\t\tif (isSkillEvent) {\n\t\t\t\tconst builder = new EventTemplateItemBuilder()\n\t\t\t\tconst templateItems = builder.buildEventTemplateItemForName(\n\t\t\t\t\tcontracts,\n\t\t\t\t\teventNameUtil.join({\n\t\t\t\t\t\teventNamespace,\n\t\t\t\t\t\teventName,\n\t\t\t\t\t\tversion: resolvedVersion,\n\t\t\t\t\t})\n\t\t\t\t)\n\n\t\t\t\temitPayloadSchemaTemplateItem =\n\t\t\t\t\ttemplateItems.emitPayloadSchemaTemplateItem\n\t\t\t\tresponsePayloadSchemaTemplateItem =\n\t\t\t\t\ttemplateItems.responsePayloadSchemaTemplateItem\n\t\t\t}\n\n\t\t\tconst generator = this.Writer('event')\n\t\t\tconst results = await generator.writeListener(resolvedDestination, {\n\t\t\t\t...normalizedOptions,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t\teventName,\n\t\t\t\teventNamespace,\n\t\t\t\tfullyQualifiedEventName: eventNameUtil.join({\n\t\t\t\t\teventName,\n\t\t\t\t\teventNamespace,\n\t\t\t\t\tversion: resolvedVersion,\n\t\t\t\t}),\n\t\t\t\temitPayloadSchemaTemplateItem,\n\t\t\t\tcontractDestinationDir,\n\t\t\t\tresponsePayloadSchemaTemplateItem,\n\t\t\t\tschemaTypesLookupDir: resolvedSchemaTypesLookupDir,\n\t\t\t})\n\n\t\t\tresponse.files = results\n\n\t\t\tif (isSkillEvent) {\n\t\t\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\t\t\tsyncEventActionSchema,\n\t\t\t\t\toptions\n\t\t\t\t)\n\n\t\t\t\tconst syncResults = await this.Action('event', 'sync').execute(\n\t\t\t\t\tsyncOptions\n\t\t\t\t)\n\n\t\t\t\tresponse = actionUtil.mergeActionResults(syncResults, response)\n\t\t\t}\n\n\t\t\treturn response\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate async collectEvent(\n\t\tcontracts: EventContract[],\n\t\teventNamespace: string\n\t): Promise<string> {\n\t\tconst eventChoices: SelectChoice[] =\n\t\t\tthis.mapContractsToSelectChoices(contracts).eventChoicesByNamespace[\n\t\t\t\teventNamespace\n\t\t\t]\n\n\t\tconst eventName = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Select an event',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: eventChoices,\n\t\t\t},\n\t\t})\n\n\t\treturn eventName\n\t}\n\n\tprivate async collectNamespace(contracts: EventContract[]): Promise<string> {\n\t\tconst { namespaceChoices } = this.mapContractsToSelectChoices(contracts)\n\n\t\tconst eventNamespace = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Select an event namespace',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: namespaceChoices,\n\t\t\t},\n\t\t})\n\n\t\treturn eventNamespace\n\t}\n\n\tprivate mapContractsToSelectChoices(contracts: EventContract[]) {\n\t\tconst namespaceChoices: SelectChoice[] = [\n\t\t\t{\n\t\t\t\tlabel: 'Skill',\n\t\t\t\tvalue: SKILL_EVENT_NAMESPACE,\n\t\t\t},\n\t\t]\n\n\t\tconst eventChoicesByNamespace: Record<string, SelectChoice[]> = {\n\t\t\tskill: [\n\t\t\t\t{\n\t\t\t\t\tlabel: 'will-boot',\n\t\t\t\t\tvalue: 'will-boot',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: 'did-boot',\n\t\t\t\t\tvalue: 'did-boot',\n\t\t\t\t},\n\t\t\t],\n\t\t}\n\n\t\tcontracts.forEach((contract) => {\n\t\t\tconst namedSignatures =\n\t\t\t\teventContractUtil.getNamedEventSignatures(contract)\n\n\t\t\tfor (const namedSig of namedSignatures) {\n\t\t\t\tconst namespace = namedSig.eventNamespace ?? MERCURY_API_NAMESPACE\n\n\t\t\t\tif (!namespaceChoices.find((o) => o.value === namespace)) {\n\t\t\t\t\tnamespaceChoices.push({\n\t\t\t\t\t\tlabel: namesUtil.toPascal(namespace),\n\t\t\t\t\t\tvalue: namespace,\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tif (!eventChoicesByNamespace[namespace]) {\n\t\t\t\t\teventChoicesByNamespace[namespace] = []\n\t\t\t\t}\n\n\t\t\t\teventChoicesByNamespace[namespace].push({\n\t\t\t\t\tvalue: namedSig.fullyQualifiedEventName,\n\t\t\t\t\tlabel: namedSig.fullyQualifiedEventName,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\treturn { eventChoicesByNamespace, namespaceChoices }\n\t}\n}\n"],"file":"ListenAction.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/features/event/actions/ListenAction.ts"],"names":["SKILL_EVENT_NAMESPACE","ListenAction","eventListenActionSchema","options","normalizedOptions","validateAndNormalizeOptions","response","listenerDestinationDir","versionOptions","version","eventName","namespace","schemaTypesLookupDir","contractDestinationDir","ui","startLoading","eventStore","Store","loadCurrentSkill","skill","namespacesForFetch","undefined","slug","fetchEventContracts","localNamespace","namespaces","didUpdateHandler","msg","contracts","stopLoading","collectNamespace","mapContractsToSelectChoices","eventChoicesByNamespace","SchemaError","code","friendlyMessage","Object","keys","join","parameters","collectEvent","fqen","eventNameUtil","eventNamespace","split","isValidEvent","find","e","value","map","i","resolvedDestination","diskUtil","resolvePath","cwd","resolveVersion","resolvedVersion","resolvedSchemaTypesLookupDir","isSkillEvent","builder","EventTemplateItemBuilder","templateItems","buildEventTemplateItemForName","emitPayloadSchemaTemplateItem","responsePayloadSchemaTemplateItem","generator","Writer","writeListener","fullyQualifiedEventName","results","files","syncOptions","syncEventActionSchema","Action","execute","syncResults","actionUtil","mergeActionResults","errors","eventChoices","prompt","type","label","isRequired","choices","namespaceChoices","forEach","contract","namedSignatures","eventContractUtil","getNamedEventSignatures","namedSig","MERCURY_API_NAMESPACE","o","push","namesUtil","toPascal","AbstractAction"],"mappings":"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","sourcesContent":["import { EventContract } from '@sprucelabs/mercury-types'\nimport {\n\tnormalizeSchemaValues,\n\tSchemaError,\n\tSchemaTemplateItem,\n\tSelectChoice,\n} from '@sprucelabs/schema'\nimport {\n\teventContractUtil,\n\teventNameUtil,\n} from '@sprucelabs/spruce-event-utils'\nimport {\n\tdiskUtil,\n\tnamesUtil,\n\tMERCURY_API_NAMESPACE,\n} from '@sprucelabs/spruce-skill-utils'\nimport { SpruceSchemas } from '#spruce/schemas/schemas.types'\nimport eventListenActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/listenEventOptions.schema'\nimport syncEventActionSchema from '#spruce/schemas/spruceCli/v2020_07_22/syncEventOptions.schema'\nimport EventTemplateItemBuilder from '../../../templateItemBuilders/EventTemplateItemBuilder'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst SKILL_EVENT_NAMESPACE = 'skill'\ntype OptionsSchema =\n\tSpruceSchemas.SpruceCli.v2020_07_22.ListenEventOptionsSchema\nexport default class ListenAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = eventListenActionSchema\n\tpublic invocationMessage = 'Creating event listener... 🜒'\n\tpublic commandAliases = ['listen.event', 'create.listener']\n\n\tpublic async execute(\n\t\toptions: SpruceSchemas.SpruceCli.v2020_07_22.ListenEventOptions\n\t): Promise<FeatureActionResponse> {\n\t\tconst normalizedOptions = this.validateAndNormalizeOptions(options)\n\n\t\ttry {\n\t\t\tlet response: FeatureActionResponse = {}\n\n\t\t\tlet {\n\t\t\t\tlistenerDestinationDir,\n\t\t\t\tversion: versionOptions,\n\t\t\t\teventName,\n\t\t\t\tnamespace,\n\t\t\t\tschemaTypesLookupDir,\n\t\t\t\tcontractDestinationDir,\n\t\t\t} = normalizedOptions\n\n\t\t\tthis.ui.startLoading('Loading event contracts...')\n\n\t\t\tconst eventStore = this.Store('event')\n\n\t\t\tconst skill = await this.Store('skill').loadCurrentSkill()\n\n\t\t\tconst namespacesForFetch =\n\t\t\t\tnamespace && namespace !== 'skill' ? [namespace] : undefined\n\n\t\t\tconst { contracts } = skill.slug\n\t\t\t\t? await eventStore.fetchEventContracts({\n\t\t\t\t\t\tlocalNamespace: skill.slug,\n\t\t\t\t\t\tnamespaces: namespacesForFetch,\n\t\t\t\t\t\tdidUpdateHandler: (msg: string) => this.ui.startLoading(msg),\n\t\t\t\t })\n\t\t\t\t: await eventStore.fetchEventContracts({\n\t\t\t\t\t\tnamespaces: namespacesForFetch,\n\t\t\t\t\t\tdidUpdateHandler: (msg: string) => this.ui.startLoading(msg),\n\t\t\t\t })\n\n\t\t\tthis.ui.stopLoading()\n\n\t\t\tif (!namespace) {\n\t\t\t\tnamespace = await this.collectNamespace(contracts)\n\t\t\t}\n\n\t\t\tconst { eventChoicesByNamespace } =\n\t\t\t\tthis.mapContractsToSelectChoices(contracts)\n\n\t\t\tif (!eventChoicesByNamespace[namespace]) {\n\t\t\t\tthrow new SchemaError({\n\t\t\t\t\tcode: 'INVALID_PARAMETERS',\n\t\t\t\t\tfriendlyMessage: `${namespace} is not a valid event namespace. Try: \\n\\n${Object.keys(\n\t\t\t\t\t\teventChoicesByNamespace\n\t\t\t\t\t).join('\\n')}`,\n\t\t\t\t\tparameters: ['namespace'],\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tif (!eventName) {\n\t\t\t\teventName = await this.collectEvent(contracts, namespace)\n\t\t\t}\n\n\t\t\tconst fqen = eventNameUtil.join({\n\t\t\t\teventName,\n\t\t\t\teventNamespace: namespace,\n\t\t\t\tversion: versionOptions,\n\t\t\t})\n\n\t\t\tlet { version } = eventNameUtil.split(fqen)\n\n\t\t\tconst isValidEvent = !!eventChoicesByNamespace[namespace].find(\n\t\t\t\t(e) => e.value === eventName || e.value === fqen\n\t\t\t)\n\n\t\t\tif (!isValidEvent) {\n\t\t\t\tthrow new SchemaError({\n\t\t\t\t\tcode: 'INVALID_PARAMETERS',\n\t\t\t\t\tfriendlyMessage: `${eventName} is not a valid event . Try: \\n\\n${eventChoicesByNamespace[\n\t\t\t\t\t\tnamespace\n\t\t\t\t\t]\n\t\t\t\t\t\t.map((i) => i.value)\n\t\t\t\t\t\t.join('\\n')}`,\n\t\t\t\t\tparameters: ['eventName'],\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tconst resolvedDestination = diskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\tlistenerDestinationDir\n\t\t\t)\n\n\t\t\tconst resolvedVersion = await this.resolveVersion(\n\t\t\t\tversion,\n\t\t\t\tresolvedDestination\n\t\t\t)\n\n\t\t\tconst resolvedSchemaTypesLookupDir = diskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\tschemaTypesLookupDir\n\t\t\t)\n\n\t\t\tconst isSkillEvent = namespace !== SKILL_EVENT_NAMESPACE\n\n\t\t\tlet emitPayloadSchemaTemplateItem: SchemaTemplateItem | undefined\n\t\t\tlet responsePayloadSchemaTemplateItem: SchemaTemplateItem | undefined\n\n\t\t\tif (isSkillEvent) {\n\t\t\t\tconst builder = new EventTemplateItemBuilder()\n\t\t\t\tconst templateItems = builder.buildEventTemplateItemForName(\n\t\t\t\t\tcontracts,\n\t\t\t\t\teventNameUtil.join({\n\t\t\t\t\t\teventNamespace: namespace,\n\t\t\t\t\t\teventName,\n\t\t\t\t\t\tversion: resolvedVersion,\n\t\t\t\t\t})\n\t\t\t\t)\n\n\t\t\t\temitPayloadSchemaTemplateItem =\n\t\t\t\t\ttemplateItems.emitPayloadSchemaTemplateItem\n\t\t\t\tresponsePayloadSchemaTemplateItem =\n\t\t\t\t\ttemplateItems.responsePayloadSchemaTemplateItem\n\t\t\t}\n\n\t\t\tconst generator = this.Writer('event')\n\t\t\tconst results = await generator.writeListener(resolvedDestination, {\n\t\t\t\t...normalizedOptions,\n\t\t\t\tversion: resolvedVersion,\n\t\t\t\teventName,\n\t\t\t\teventNamespace: namespace,\n\t\t\t\tfullyQualifiedEventName: eventNameUtil.join({\n\t\t\t\t\teventName,\n\t\t\t\t\teventNamespace: namespace,\n\t\t\t\t\tversion: resolvedVersion,\n\t\t\t\t}),\n\t\t\t\temitPayloadSchemaTemplateItem,\n\t\t\t\tcontractDestinationDir,\n\t\t\t\tresponsePayloadSchemaTemplateItem,\n\t\t\t\tschemaTypesLookupDir: resolvedSchemaTypesLookupDir,\n\t\t\t})\n\n\t\t\tresponse.files = results\n\n\t\t\tif (isSkillEvent) {\n\t\t\t\tconst syncOptions = normalizeSchemaValues(\n\t\t\t\t\tsyncEventActionSchema,\n\t\t\t\t\toptions\n\t\t\t\t)\n\n\t\t\t\tconst syncResults = await this.Action('event', 'sync').execute(\n\t\t\t\t\tsyncOptions\n\t\t\t\t)\n\n\t\t\t\tresponse = actionUtil.mergeActionResults(syncResults, response)\n\t\t\t}\n\n\t\t\treturn response\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate async collectEvent(\n\t\tcontracts: EventContract[],\n\t\tnamespace: string\n\t): Promise<string> {\n\t\tconst eventChoices: SelectChoice[] =\n\t\t\tthis.mapContractsToSelectChoices(contracts).eventChoicesByNamespace[\n\t\t\t\tnamespace\n\t\t\t]\n\n\t\tconst eventName = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Select an event',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: eventChoices,\n\t\t\t},\n\t\t})\n\n\t\treturn eventName\n\t}\n\n\tprivate async collectNamespace(contracts: EventContract[]): Promise<string> {\n\t\tconst { namespaceChoices } = this.mapContractsToSelectChoices(contracts)\n\n\t\tconst namespace = await this.ui.prompt({\n\t\t\ttype: 'select',\n\t\t\tlabel: 'Select an event namespace',\n\t\t\tisRequired: true,\n\t\t\toptions: {\n\t\t\t\tchoices: namespaceChoices,\n\t\t\t},\n\t\t})\n\n\t\treturn namespace\n\t}\n\n\tprivate mapContractsToSelectChoices(contracts: EventContract[]) {\n\t\tconst namespaceChoices: SelectChoice[] = [\n\t\t\t{\n\t\t\t\tlabel: 'Skill',\n\t\t\t\tvalue: SKILL_EVENT_NAMESPACE,\n\t\t\t},\n\t\t]\n\n\t\tconst eventChoicesByNamespace: Record<string, SelectChoice[]> = {\n\t\t\tskill: [\n\t\t\t\t{\n\t\t\t\t\tlabel: 'will-boot',\n\t\t\t\t\tvalue: 'will-boot',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: 'did-boot',\n\t\t\t\t\tvalue: 'did-boot',\n\t\t\t\t},\n\t\t\t],\n\t\t}\n\n\t\tcontracts.forEach((contract) => {\n\t\t\tconst namedSignatures =\n\t\t\t\teventContractUtil.getNamedEventSignatures(contract)\n\n\t\t\tfor (const namedSig of namedSignatures) {\n\t\t\t\tconst namespace = namedSig.eventNamespace ?? MERCURY_API_NAMESPACE\n\n\t\t\t\tif (!namespaceChoices.find((o) => o.value === namespace)) {\n\t\t\t\t\tnamespaceChoices.push({\n\t\t\t\t\t\tlabel: namesUtil.toPascal(namespace),\n\t\t\t\t\t\tvalue: namespace,\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tif (!eventChoicesByNamespace[namespace]) {\n\t\t\t\t\teventChoicesByNamespace[namespace] = []\n\t\t\t\t}\n\n\t\t\t\teventChoicesByNamespace[namespace].push({\n\t\t\t\t\tvalue: namedSig.fullyQualifiedEventName,\n\t\t\t\t\tlabel: namedSig.fullyQualifiedEventName,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\treturn { eventChoicesByNamespace, namespaceChoices }\n\t}\n}\n"],"file":"ListenAction.js"}
|
|
@@ -109,7 +109,7 @@ var EventStore = /*#__PURE__*/function (_AbstractStore) {
|
|
|
109
109
|
key: "fetchEventContracts",
|
|
110
110
|
value: function () {
|
|
111
111
|
var _fetchEventContracts = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(options) {
|
|
112
|
-
var _ref, localNamespace, didUpdateHandler, namespaces, contracts, localContract;
|
|
112
|
+
var _ref, localNamespace, didUpdateHandler, namespaces, contracts, error, localContract;
|
|
113
113
|
|
|
114
114
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
115
115
|
while (1) {
|
|
@@ -117,26 +117,37 @@ var EventStore = /*#__PURE__*/function (_AbstractStore) {
|
|
|
117
117
|
case 0:
|
|
118
118
|
_ref = options !== null && options !== void 0 ? options : {}, localNamespace = _ref.localNamespace, didUpdateHandler = _ref.didUpdateHandler, namespaces = _ref.namespaces;
|
|
119
119
|
didUpdateHandler === null || didUpdateHandler === void 0 ? void 0 : didUpdateHandler('Pulling remote contracts...');
|
|
120
|
-
_context.
|
|
120
|
+
_context.prev = 2;
|
|
121
|
+
_context.next = 5;
|
|
121
122
|
return this.fetchRemoteContracts(namespaces);
|
|
122
123
|
|
|
123
|
-
case
|
|
124
|
+
case 5:
|
|
124
125
|
contracts = _context.sent;
|
|
125
|
-
_context.
|
|
126
|
+
_context.next = 12;
|
|
127
|
+
break;
|
|
128
|
+
|
|
129
|
+
case 8:
|
|
130
|
+
_context.prev = 8;
|
|
131
|
+
_context.t0 = _context["catch"](2);
|
|
132
|
+
error = _context.t0.options.responseErrors[0];
|
|
133
|
+
throw error;
|
|
126
134
|
|
|
127
|
-
|
|
128
|
-
|
|
135
|
+
case 12:
|
|
136
|
+
_context.t1 = localNamespace;
|
|
137
|
+
|
|
138
|
+
if (!_context.t1) {
|
|
139
|
+
_context.next = 17;
|
|
129
140
|
break;
|
|
130
141
|
}
|
|
131
142
|
|
|
132
|
-
_context.next =
|
|
143
|
+
_context.next = 16;
|
|
133
144
|
return this.loadLocalContract(localNamespace, didUpdateHandler);
|
|
134
145
|
|
|
135
|
-
case
|
|
136
|
-
_context.
|
|
146
|
+
case 16:
|
|
147
|
+
_context.t1 = _context.sent;
|
|
137
148
|
|
|
138
|
-
case
|
|
139
|
-
localContract = _context.
|
|
149
|
+
case 17:
|
|
150
|
+
localContract = _context.t1;
|
|
140
151
|
|
|
141
152
|
if (localNamespace) {
|
|
142
153
|
this.filterOutLocalEventsFromRemoteContractsMutating(contracts, localNamespace);
|
|
@@ -151,12 +162,12 @@ var EventStore = /*#__PURE__*/function (_AbstractStore) {
|
|
|
151
162
|
errors: []
|
|
152
163
|
});
|
|
153
164
|
|
|
154
|
-
case
|
|
165
|
+
case 21:
|
|
155
166
|
case "end":
|
|
156
167
|
return _context.stop();
|
|
157
168
|
}
|
|
158
169
|
}
|
|
159
|
-
}, _callee, this);
|
|
170
|
+
}, _callee, this, [[2, 8]]);
|
|
160
171
|
}));
|
|
161
172
|
|
|
162
173
|
function fetchEventContracts(_x) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/features/event/stores/EventStore.ts"],"names":["eventFileNamesImportKeyMap","key","isSchema","EventStore","options","localNamespace","didUpdateHandler","namespaces","fetchRemoteContracts","contracts","loadLocalContract","localContract","filterOutLocalEventsFromRemoteContractsMutating","push","errors","join","contractCache","connectToApi","shouldAuthAsCurrentSkill","client","emit","target","results","eventResponseUtil","getFirstResponseOrThrow","remoteContracts","ns","namesUtil","toKebab","contract","sigs","eventContractUtil","getNamedEventSignatures","sig","eventNamespace","eventSignatures","fullyQualifiedEventName","localEventCache","diskUtil","resolvePath","cwd","localMatches","filesByFqenAndEventKey","length","Promise","all","map","match","eventDiskUtil","splitPathToEvent","eventName","version","fqen","eventNameUtil","filename","pathUtil","basename","eventKey","SpruceError","code","brokenProperty","originalError","matches","o","Service","bulkImport","importsInOrder","importsByName","idx","imported","Object","keys","forEach","split","emitPayloadSchema","payloadSchema","emitPayload","targetSchema","emitTarget","responsePayloadSchema","responsePayload","emitPermissionContract","emitPermissions","listenPermissionContract","listenPermissions","cleaned","eventContractCleanerUtil","cleanPayloadsAndPermissions","payload","eventContract","undefined","AbstractStore"],"mappings":"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","sourcesContent":["import pathUtil from 'path'\nimport {\n\tEventContract,\n\tEventSignature,\n\tPermissionContract,\n\tSpruceSchemas,\n\tvalidateEventContract,\n} from '@sprucelabs/mercury-types'\nimport { Schema, validateSchema } from '@sprucelabs/schema'\nimport {\n\teventResponseUtil,\n\teventDiskUtil,\n\teventNameUtil,\n\tbuildEmitTargetAndPayloadSchema,\n\teventContractUtil,\n} from '@sprucelabs/spruce-event-utils'\nimport { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport globby from 'globby'\nimport { cloneDeep } from 'lodash'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractStore from '../../../stores/AbstractStore'\nimport { InternalUpdateHandler } from '../../../types/cli.types'\nimport { eventContractCleanerUtil } from '../../../utilities/eventContractCleaner.utility'\n\nexport interface EventStoreFetchEventContractsResponse {\n\terrors: SpruceError[]\n\tcontracts: EventContract[]\n}\n\ntype Options = Omit<\n\tEventSignature,\n\t| 'responsePayloadSchema'\n\t| 'emitPayloadSchema'\n\t| 'listenPermissionContract'\n\t| 'emitPermissionContract'\n>\n\ninterface EventImport {\n\toptions?: Options\n\temitPayload?: Schema\n\temitTarget?: Schema\n\tresponsePayload?: Schema\n\temitPermissions?: PermissionContract\n\tlistenPermissions?: PermissionContract\n}\n\nconst eventFileNamesImportKeyMap = {\n\t'event.options.ts': { key: 'options', isSchema: false },\n\t'emitPayload.builder.ts': { key: 'emitPayload', isSchema: true },\n\t'emitTarget.builder.ts': { key: 'emitTarget', isSchema: true },\n\t'responsePayload.builder.ts': { key: 'responsePayload', isSchema: true },\n\t'emitPermissions.builder.ts': { key: 'emitPermissions', isSchema: false },\n\t'listenPermissions.builder.ts': { key: 'listenPermissions', isSchema: false },\n}\n\nexport default class EventStore extends AbstractStore {\n\tpublic name = 'event'\n\tprotected static contractCache: Record<string, any> = {}\n\tprivate static localEventCache?: SpruceSchemas.Mercury.v2020_12_25.EventContract\n\n\tpublic static clearCache() {\n\t\tEventStore.localEventCache = undefined\n\t\tEventStore.contractCache = {}\n\t}\n\n\tpublic async fetchEventContracts(options?: {\n\t\tlocalNamespace?: string\n\t\tnamespaces?: string[]\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t}): Promise<EventStoreFetchEventContractsResponse> {\n\t\tconst { localNamespace, didUpdateHandler, namespaces } = options ?? {}\n\n\t\tdidUpdateHandler?.('Pulling remote contracts...')\n\n\t\tconst contracts = await this.fetchRemoteContracts(namespaces)\n\n\t\tconst localContract =\n\t\t\tlocalNamespace &&\n\t\t\t(await this.loadLocalContract(localNamespace, didUpdateHandler))\n\n\t\tif (localNamespace) {\n\t\t\tthis.filterOutLocalEventsFromRemoteContractsMutating(\n\t\t\t\tcontracts,\n\t\t\t\tlocalNamespace\n\t\t\t)\n\t\t}\n\n\t\tif (localContract) {\n\t\t\tcontracts.push(localContract)\n\t\t}\n\n\t\treturn {\n\t\t\tcontracts,\n\t\t\terrors: [],\n\t\t}\n\t}\n\n\tprivate async fetchRemoteContracts(namespaces?: string[]) {\n\t\tconst key = namespaces?.join('|') ?? '_'\n\n\t\tif (!EventStore.contractCache[key]) {\n\t\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\t\tconst results = await client.emit('get-event-contracts::v2020_12_25', {\n\t\t\t\ttarget: {\n\t\t\t\t\tnamespaces,\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tconst { contracts } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\t\tEventStore.contractCache[key] = contracts\n\t\t}\n\n\t\treturn cloneDeep(EventStore.contractCache[key])\n\t}\n\n\tprivate filterOutLocalEventsFromRemoteContractsMutating(\n\t\tremoteContracts: EventContract[],\n\t\tlocalNamespace: string\n\t) {\n\t\tconst ns = namesUtil.toKebab(localNamespace)\n\n\t\tfor (const contract of remoteContracts) {\n\t\t\tconst sigs = eventContractUtil.getNamedEventSignatures(contract)\n\t\t\tfor (const sig of sigs) {\n\t\t\t\tif (sig.eventNamespace === ns) {\n\t\t\t\t\tdelete contract.eventSignatures[sig.fullyQualifiedEventName]\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async loadLocalContract(\n\t\tlocalNamespace: string,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<EventContract | null> {\n\t\tif (EventStore.localEventCache) {\n\t\t\treturn EventStore.localEventCache\n\t\t}\n\n\t\tconst localMatches = await globby(\n\t\t\tdiskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\t'src',\n\t\t\t\t'events',\n\t\t\t\t'**/*.(builder|options).ts'\n\t\t\t)\n\t\t)\n\n\t\tconst ns = namesUtil.toKebab(localNamespace)\n\t\tconst eventSignatures: Record<string, EventSignature> = {}\n\t\tconst filesByFqenAndEventKey: {\n\t\t\tfqen: string\n\t\t\tisSchema: boolean\n\t\t\tmatch: string\n\t\t\teventKey: string\n\t\t}[] = []\n\n\t\tdidUpdateHandler?.(\n\t\t\t`Importing ${localMatches.length} local event signature files...`\n\t\t)\n\n\t\tawait Promise.all(\n\t\t\tlocalMatches.map(async (match) => {\n\t\t\t\tlet fqen: string | undefined\n\t\t\t\tlet eventKey: keyof EventImport | undefined\n\n\t\t\t\ttry {\n\t\t\t\t\tconst { eventName, version } = eventDiskUtil.splitPathToEvent(match)\n\t\t\t\t\tfqen = eventNameUtil.join({\n\t\t\t\t\t\teventName,\n\t\t\t\t\t\tversion,\n\t\t\t\t\t\teventNamespace: ns,\n\t\t\t\t\t})\n\n\t\t\t\t\tconst filename = pathUtil.basename(\n\t\t\t\t\t\tmatch\n\t\t\t\t\t) as keyof typeof eventFileNamesImportKeyMap\n\n\t\t\t\t\tconst map = eventFileNamesImportKeyMap[filename]\n\n\t\t\t\t\tif (map) {\n\t\t\t\t\t\t//@ts-ignore\n\t\t\t\t\t\teventKey = map.key\n\n\t\t\t\t\t\tfilesByFqenAndEventKey.push({\n\t\t\t\t\t\t\tfqen,\n\t\t\t\t\t\t\tisSchema: map.isSchema,\n\t\t\t\t\t\t\tmatch,\n\t\t\t\t\t\t\teventKey: eventKey as string,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'INVALID_EVENT_CONTRACT',\n\t\t\t\t\t\tfullyQualifiedEventName: fqen ?? 'Bad event name',\n\t\t\t\t\t\tbrokenProperty: eventKey ?? '*** major failure ***',\n\t\t\t\t\t\toriginalError: err,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t})\n\t\t)\n\n\t\tconst matches = filesByFqenAndEventKey.map((o) => o.match)\n\t\tconst importsInOrder = (await this.Service('import').bulkImport(\n\t\t\tmatches\n\t\t)) as Record<string, any>[]\n\t\tconst importsByName: Record<string, EventImport> = {}\n\n\t\tfor (let idx = 0; idx < filesByFqenAndEventKey.length; idx++) {\n\t\t\tconst imported = importsInOrder[idx]\n\t\t\tconst { fqen, eventKey, isSchema } = filesByFqenAndEventKey[idx]\n\n\t\t\tif (isSchema) {\n\t\t\t\ttry {\n\t\t\t\t\tvalidateSchema(imported)\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'INVALID_EVENT_CONTRACT',\n\t\t\t\t\t\tfullyQualifiedEventName: fqen,\n\t\t\t\t\t\tbrokenProperty: eventKey,\n\t\t\t\t\t\toriginalError: err,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!importsByName[fqen]) {\n\t\t\t\timportsByName[fqen] = {}\n\t\t\t}\n\n\t\t\t//@ts-ignore\n\t\t\timportsByName[fqen][eventKey] = imported\n\t\t}\n\n\t\tObject.keys(importsByName).forEach((fqen) => {\n\t\t\tconst imported = importsByName[fqen]\n\t\t\tconst { eventName } = eventNameUtil.split(fqen)\n\t\t\teventSignatures[fqen] = {\n\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\teventName,\n\t\t\t\t\tpayloadSchema: imported.emitPayload,\n\t\t\t\t\ttargetSchema: imported.emitTarget,\n\t\t\t\t}),\n\t\t\t\tresponsePayloadSchema: imported.responsePayload,\n\t\t\t\temitPermissionContract: imported.emitPermissions,\n\t\t\t\tlistenPermissionContract: imported.listenPermissions,\n\t\t\t\t...imported.options,\n\t\t\t}\n\t\t})\n\n\t\tdidUpdateHandler?.(\n\t\t\t`Loaded ${Object.keys(eventSignatures).length} local event signatures...`\n\t\t)\n\n\t\tif (Object.keys(eventSignatures).length > 0) {\n\t\t\tconst cleaned = eventContractCleanerUtil.cleanPayloadsAndPermissions({\n\t\t\t\teventSignatures,\n\t\t\t})\n\n\t\t\tvalidateEventContract(cleaned)\n\n\t\t\tEventStore.localEventCache = cleaned\n\n\t\t\treturn cleaned\n\t\t}\n\n\t\treturn null\n\t}\n\n\tpublic async registerEventContract(options: {\n\t\teventContract: EventContract\n\t}) {\n\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\tconst results = await client.emit('register-events::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tcontract: options.eventContract,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tEventStore.contractCache = {}\n\n\t\treturn results\n\t}\n\n\tpublic async unRegisterEvents(\n\t\toptions: SpruceSchemas.Mercury.v2020_12_25.UnregisterEventsEmitPayload\n\t) {\n\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\tconst results = await client.emit('unregister-events::v2020_12_25', {\n\t\t\tpayload: options,\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tEventStore.contractCache = {}\n\t}\n}\n"],"file":"EventStore.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/features/event/stores/EventStore.ts"],"names":["eventFileNamesImportKeyMap","key","isSchema","EventStore","options","localNamespace","didUpdateHandler","namespaces","fetchRemoteContracts","contracts","error","responseErrors","loadLocalContract","localContract","filterOutLocalEventsFromRemoteContractsMutating","push","errors","join","contractCache","connectToApi","shouldAuthAsCurrentSkill","client","emit","target","results","eventResponseUtil","getFirstResponseOrThrow","remoteContracts","ns","namesUtil","toKebab","contract","sigs","eventContractUtil","getNamedEventSignatures","sig","eventNamespace","eventSignatures","fullyQualifiedEventName","localEventCache","diskUtil","resolvePath","cwd","localMatches","filesByFqenAndEventKey","length","Promise","all","map","match","eventDiskUtil","splitPathToEvent","eventName","version","fqen","eventNameUtil","filename","pathUtil","basename","eventKey","SpruceError","code","brokenProperty","originalError","matches","o","Service","bulkImport","importsInOrder","importsByName","idx","imported","Object","keys","forEach","split","emitPayloadSchema","payloadSchema","emitPayload","targetSchema","emitTarget","responsePayloadSchema","responsePayload","emitPermissionContract","emitPermissions","listenPermissionContract","listenPermissions","cleaned","eventContractCleanerUtil","cleanPayloadsAndPermissions","payload","eventContract","undefined","AbstractStore"],"mappings":"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","sourcesContent":["import pathUtil from 'path'\nimport {\n\tEventContract,\n\tEventSignature,\n\tPermissionContract,\n\tSpruceSchemas,\n\tvalidateEventContract,\n} from '@sprucelabs/mercury-types'\nimport { Schema, validateSchema } from '@sprucelabs/schema'\nimport {\n\teventResponseUtil,\n\teventDiskUtil,\n\teventNameUtil,\n\tbuildEmitTargetAndPayloadSchema,\n\teventContractUtil,\n} from '@sprucelabs/spruce-event-utils'\nimport { diskUtil, namesUtil } from '@sprucelabs/spruce-skill-utils'\nimport globby from 'globby'\nimport { cloneDeep } from 'lodash'\nimport SpruceError from '../../../errors/SpruceError'\nimport AbstractStore from '../../../stores/AbstractStore'\nimport { InternalUpdateHandler } from '../../../types/cli.types'\nimport { eventContractCleanerUtil } from '../../../utilities/eventContractCleaner.utility'\n\nexport interface EventStoreFetchEventContractsResponse {\n\terrors: SpruceError[]\n\tcontracts: EventContract[]\n}\n\ntype Options = Omit<\n\tEventSignature,\n\t| 'responsePayloadSchema'\n\t| 'emitPayloadSchema'\n\t| 'listenPermissionContract'\n\t| 'emitPermissionContract'\n>\n\ninterface EventImport {\n\toptions?: Options\n\temitPayload?: Schema\n\temitTarget?: Schema\n\tresponsePayload?: Schema\n\temitPermissions?: PermissionContract\n\tlistenPermissions?: PermissionContract\n}\n\nconst eventFileNamesImportKeyMap = {\n\t'event.options.ts': { key: 'options', isSchema: false },\n\t'emitPayload.builder.ts': { key: 'emitPayload', isSchema: true },\n\t'emitTarget.builder.ts': { key: 'emitTarget', isSchema: true },\n\t'responsePayload.builder.ts': { key: 'responsePayload', isSchema: true },\n\t'emitPermissions.builder.ts': { key: 'emitPermissions', isSchema: false },\n\t'listenPermissions.builder.ts': { key: 'listenPermissions', isSchema: false },\n}\n\nexport default class EventStore extends AbstractStore {\n\tpublic name = 'event'\n\tprotected static contractCache: Record<string, any> = {}\n\tprivate static localEventCache?: SpruceSchemas.Mercury.v2020_12_25.EventContract\n\n\tpublic static clearCache() {\n\t\tEventStore.localEventCache = undefined\n\t\tEventStore.contractCache = {}\n\t}\n\n\tpublic async fetchEventContracts(options?: {\n\t\tlocalNamespace?: string\n\t\tnamespaces?: string[]\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t}): Promise<EventStoreFetchEventContractsResponse> {\n\t\tconst { localNamespace, didUpdateHandler, namespaces } = options ?? {}\n\n\t\tdidUpdateHandler?.('Pulling remote contracts...')\n\n\t\tlet contracts\n\t\ttry {\n\t\t\tcontracts = await this.fetchRemoteContracts(namespaces)\n\t\t} catch (err: any) {\n\t\t\tconst error = err.options.responseErrors[0]\n\t\t\tthrow error\n\t\t}\n\n\t\tconst localContract =\n\t\t\tlocalNamespace &&\n\t\t\t(await this.loadLocalContract(localNamespace, didUpdateHandler))\n\n\t\tif (localNamespace) {\n\t\t\tthis.filterOutLocalEventsFromRemoteContractsMutating(\n\t\t\t\tcontracts,\n\t\t\t\tlocalNamespace\n\t\t\t)\n\t\t}\n\n\t\tif (localContract) {\n\t\t\tcontracts.push(localContract)\n\t\t}\n\n\t\treturn {\n\t\t\tcontracts,\n\t\t\terrors: [],\n\t\t}\n\t}\n\n\tprivate async fetchRemoteContracts(namespaces?: string[]) {\n\t\tconst key = namespaces?.join('|') ?? '_'\n\n\t\tif (!EventStore.contractCache[key]) {\n\t\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\t\tconst results = await client.emit('get-event-contracts::v2020_12_25', {\n\t\t\t\ttarget: {\n\t\t\t\t\tnamespaces,\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tconst { contracts } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\t\tEventStore.contractCache[key] = contracts\n\t\t}\n\n\t\treturn cloneDeep(EventStore.contractCache[key])\n\t}\n\n\tprivate filterOutLocalEventsFromRemoteContractsMutating(\n\t\tremoteContracts: EventContract[],\n\t\tlocalNamespace: string\n\t) {\n\t\tconst ns = namesUtil.toKebab(localNamespace)\n\n\t\tfor (const contract of remoteContracts) {\n\t\t\tconst sigs = eventContractUtil.getNamedEventSignatures(contract)\n\t\t\tfor (const sig of sigs) {\n\t\t\t\tif (sig.eventNamespace === ns) {\n\t\t\t\t\tdelete contract.eventSignatures[sig.fullyQualifiedEventName]\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async loadLocalContract(\n\t\tlocalNamespace: string,\n\t\tdidUpdateHandler?: InternalUpdateHandler\n\t): Promise<EventContract | null> {\n\t\tif (EventStore.localEventCache) {\n\t\t\treturn EventStore.localEventCache\n\t\t}\n\n\t\tconst localMatches = await globby(\n\t\t\tdiskUtil.resolvePath(\n\t\t\t\tthis.cwd,\n\t\t\t\t'src',\n\t\t\t\t'events',\n\t\t\t\t'**/*.(builder|options).ts'\n\t\t\t)\n\t\t)\n\n\t\tconst ns = namesUtil.toKebab(localNamespace)\n\t\tconst eventSignatures: Record<string, EventSignature> = {}\n\t\tconst filesByFqenAndEventKey: {\n\t\t\tfqen: string\n\t\t\tisSchema: boolean\n\t\t\tmatch: string\n\t\t\teventKey: string\n\t\t}[] = []\n\n\t\tdidUpdateHandler?.(\n\t\t\t`Importing ${localMatches.length} local event signature files...`\n\t\t)\n\n\t\tawait Promise.all(\n\t\t\tlocalMatches.map(async (match) => {\n\t\t\t\tlet fqen: string | undefined\n\t\t\t\tlet eventKey: keyof EventImport | undefined\n\n\t\t\t\ttry {\n\t\t\t\t\tconst { eventName, version } = eventDiskUtil.splitPathToEvent(match)\n\t\t\t\t\tfqen = eventNameUtil.join({\n\t\t\t\t\t\teventName,\n\t\t\t\t\t\tversion,\n\t\t\t\t\t\teventNamespace: ns,\n\t\t\t\t\t})\n\n\t\t\t\t\tconst filename = pathUtil.basename(\n\t\t\t\t\t\tmatch\n\t\t\t\t\t) as keyof typeof eventFileNamesImportKeyMap\n\n\t\t\t\t\tconst map = eventFileNamesImportKeyMap[filename]\n\n\t\t\t\t\tif (map) {\n\t\t\t\t\t\t//@ts-ignore\n\t\t\t\t\t\teventKey = map.key\n\n\t\t\t\t\t\tfilesByFqenAndEventKey.push({\n\t\t\t\t\t\t\tfqen,\n\t\t\t\t\t\t\tisSchema: map.isSchema,\n\t\t\t\t\t\t\tmatch,\n\t\t\t\t\t\t\teventKey: eventKey as string,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'INVALID_EVENT_CONTRACT',\n\t\t\t\t\t\tfullyQualifiedEventName: fqen ?? 'Bad event name',\n\t\t\t\t\t\tbrokenProperty: eventKey ?? '*** major failure ***',\n\t\t\t\t\t\toriginalError: err,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t})\n\t\t)\n\n\t\tconst matches = filesByFqenAndEventKey.map((o) => o.match)\n\t\tconst importsInOrder = (await this.Service('import').bulkImport(\n\t\t\tmatches\n\t\t)) as Record<string, any>[]\n\t\tconst importsByName: Record<string, EventImport> = {}\n\n\t\tfor (let idx = 0; idx < filesByFqenAndEventKey.length; idx++) {\n\t\t\tconst imported = importsInOrder[idx]\n\t\t\tconst { fqen, eventKey, isSchema } = filesByFqenAndEventKey[idx]\n\n\t\t\tif (isSchema) {\n\t\t\t\ttry {\n\t\t\t\t\tvalidateSchema(imported)\n\t\t\t\t} catch (err: any) {\n\t\t\t\t\tthrow new SpruceError({\n\t\t\t\t\t\tcode: 'INVALID_EVENT_CONTRACT',\n\t\t\t\t\t\tfullyQualifiedEventName: fqen,\n\t\t\t\t\t\tbrokenProperty: eventKey,\n\t\t\t\t\t\toriginalError: err,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!importsByName[fqen]) {\n\t\t\t\timportsByName[fqen] = {}\n\t\t\t}\n\n\t\t\t//@ts-ignore\n\t\t\timportsByName[fqen][eventKey] = imported\n\t\t}\n\n\t\tObject.keys(importsByName).forEach((fqen) => {\n\t\t\tconst imported = importsByName[fqen]\n\t\t\tconst { eventName } = eventNameUtil.split(fqen)\n\t\t\teventSignatures[fqen] = {\n\t\t\t\temitPayloadSchema: buildEmitTargetAndPayloadSchema({\n\t\t\t\t\teventName,\n\t\t\t\t\tpayloadSchema: imported.emitPayload,\n\t\t\t\t\ttargetSchema: imported.emitTarget,\n\t\t\t\t}),\n\t\t\t\tresponsePayloadSchema: imported.responsePayload,\n\t\t\t\temitPermissionContract: imported.emitPermissions,\n\t\t\t\tlistenPermissionContract: imported.listenPermissions,\n\t\t\t\t...imported.options,\n\t\t\t}\n\t\t})\n\n\t\tdidUpdateHandler?.(\n\t\t\t`Loaded ${Object.keys(eventSignatures).length} local event signatures...`\n\t\t)\n\n\t\tif (Object.keys(eventSignatures).length > 0) {\n\t\t\tconst cleaned = eventContractCleanerUtil.cleanPayloadsAndPermissions({\n\t\t\t\teventSignatures,\n\t\t\t})\n\n\t\t\tvalidateEventContract(cleaned)\n\n\t\t\tEventStore.localEventCache = cleaned\n\n\t\t\treturn cleaned\n\t\t}\n\n\t\treturn null\n\t}\n\n\tpublic async registerEventContract(options: {\n\t\teventContract: EventContract\n\t}) {\n\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\tconst results = await client.emit('register-events::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tcontract: options.eventContract,\n\t\t\t},\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tEventStore.contractCache = {}\n\n\t\treturn results\n\t}\n\n\tpublic async unRegisterEvents(\n\t\toptions: SpruceSchemas.Mercury.v2020_12_25.UnregisterEventsEmitPayload\n\t) {\n\t\tconst client = await this.connectToApi({ shouldAuthAsCurrentSkill: true })\n\n\t\tconst results = await client.emit('unregister-events::v2020_12_25', {\n\t\t\tpayload: options,\n\t\t})\n\n\t\teventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\tEventStore.contractCache = {}\n\t}\n}\n"],"file":"EventStore.js"}
|
|
@@ -75,7 +75,7 @@ var SetupAction = /*#__PURE__*/function (_AbstractAction) {
|
|
|
75
75
|
createListenerAction = this.Action('event', 'listen');
|
|
76
76
|
_context.next = 3;
|
|
77
77
|
return createListenerAction.execute({
|
|
78
|
-
|
|
78
|
+
namespace: 'skill',
|
|
79
79
|
eventName: 'will-boot'
|
|
80
80
|
});
|
|
81
81
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/features/sandbox/actions/SetupAction.ts"],"names":["optionsSchema","id","name","fields","SetupAction","setupVscodeSchema","createListenerAction","Action","execute","
|
|
1
|
+
{"version":3,"sources":["../../../../src/features/sandbox/actions/SetupAction.ts"],"names":["optionsSchema","id","name","fields","SetupAction","setupVscodeSchema","createListenerAction","Action","execute","namespace","eventName","results","errors","match","files","find","file","search","Error","description","Writer","writeDidBootListener","path","AbstractAction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,qBAD6B;AAEjCC,EAAAA,IAAI,EAAE,uBAF2B;AAGjCC,EAAAA,MAAM,EAAE;AAHyB,CAAZ,CAAtB;;IAQqBC,W;;;;;;;;;;;;;;;sGACGC,8B;0GACI,kC;;;;;;;mGAE3B;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AACOC,gBAAAA,oBADP,GAC8B,KAAKC,MAAL,CAAY,OAAZ,EAAqB,QAArB,CAD9B;AAAA;AAAA,uBAEuBD,oBAAoB,CAACE,OAArB,CAA6B;AAClDC,kBAAAA,SAAS,EAAE,OADuC;AAElDC,kBAAAA,SAAS,EAAE;AAFuC,iBAA7B,CAFvB;;AAAA;AAEOC,gBAAAA,OAFP;;AAAA,qBAOKA,OAAO,CAACC,MAPb;AAAA;AAAA;AAAA;;AAAA,iDAQSD,OART;;AAAA;AAWOE,gBAAAA,KAXP,GAWe,mBAACF,OAAO,CAACG,KAAT,2DAAkB,EAAlB,EAAsBC,IAAtB,CACb,UAACC,IAAD;AAAA,yBAAUA,IAAI,CAACd,IAAL,CAAUe,MAAV,CAAiB,WAAjB,MAAkC,CAA5C;AAAA,iBADa,CAXf;;AAAA,oBAeMJ,KAfN;AAAA;AAAA;AAAA;;AAAA,sBAgBQ,IAAIK,KAAJ,CAAU,wBAAV,CAhBR;;AAAA;AAmBCL,gBAAAA,KAAK,CAACM,WAAN,GAAoB,2CAApB;AAnBD;AAAA,uBAqBO,KAAKC,MAAL,CAAY,SAAZ,EAAuBC,oBAAvB,CAA4CR,KAAK,CAACS,IAAlD,CArBP;;AAAA;AAAA,iDAuBQX,OAvBR;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAJwCY,2B","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport setupVscodeSchema from '#spruce/schemas/spruceCli/v2020_07_22/setupVscodeOptions.schema'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'setupSandboxOptions',\n\tname: 'Setup sandbox options',\n\tfields: {},\n})\n\ntype OptionsSchema = typeof optionsSchema\n\nexport default class SetupAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema = setupVscodeSchema\n\tpublic invocationMessage = 'Setting up sandbox support... 🏝'\n\n\tpublic async execute(): Promise<FeatureActionResponse> {\n\t\tconst createListenerAction = this.Action('event', 'listen')\n\t\tconst results = await createListenerAction.execute({\n\t\t\tnamespace: 'skill',\n\t\t\teventName: 'will-boot',\n\t\t})\n\n\t\tif (results.errors) {\n\t\t\treturn results\n\t\t}\n\n\t\tconst match = (results.files ?? []).find(\n\t\t\t(file) => file.name.search('will-boot') === 0\n\t\t)\n\n\t\tif (!match) {\n\t\t\tthrow new Error('file was not generated')\n\t\t}\n\n\t\tmatch.description = 'Used for recovering from a sandbox reset.'\n\n\t\tawait this.Writer('sandbox').writeDidBootListener(match.path)\n\n\t\treturn results\n\t}\n}\n"],"file":"SetupAction.js"}
|
|
@@ -22,7 +22,7 @@ var _default = (0, _schema.buildSchema)({
|
|
|
22
22
|
name: 'Listen to event action',
|
|
23
23
|
description: 'Options for event.listen.',
|
|
24
24
|
fields: _objectSpread(_objectSpread({}, _syncEventOptions["default"].fields), {}, {
|
|
25
|
-
|
|
25
|
+
namespace: {
|
|
26
26
|
type: 'text',
|
|
27
27
|
label: 'Namespace'
|
|
28
28
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/schemas/v2020_07_22/listenEventOptions.builder.ts"],"names":["id","name","description","fields","syncEventOptionsBuilder","
|
|
1
|
+
{"version":3,"sources":["../../../src/schemas/v2020_07_22/listenEventOptions.builder.ts"],"names":["id","name","description","fields","syncEventOptionsBuilder","namespace","type","label","eventName","listenerDestinationDir","hint","defaultValue","version","isPrivate"],"mappings":";;;;;;;;;;;AAAA;;AACA;;;;;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,oBADsB;AAE1BC,EAAAA,IAAI,EAAE,wBAFoB;AAG1BC,EAAAA,WAAW,EAAE,2BAHa;AAI1BC,EAAAA,MAAM,kCACFC,6BAAwBD,MADtB;AAELE,IAAAA,SAAS,EAAE;AACVC,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE;AAFG,KAFN;AAMLC,IAAAA,SAAS,EAAE;AACVF,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE;AAFG,KANN;AAULE,IAAAA,sBAAsB,EAAE;AACvBH,MAAAA,IAAI,EAAE,MADiB;AAEvBC,MAAAA,KAAK,EAAE,8BAFgB;AAGvBG,MAAAA,IAAI,EAAE,oCAHiB;AAIvBC,MAAAA,YAAY,EAAE;AAJS,KAVnB;AAgBLC,IAAAA,OAAO,EAAE;AACRN,MAAAA,IAAI,EAAE,MADE;AAERC,MAAAA,KAAK,EAAE,SAFC;AAGRG,MAAAA,IAAI,EAAE,mEAHE;AAIRG,MAAAA,SAAS,EAAE;AAJH;AAhBJ;AAJoB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\nimport syncEventOptionsBuilder from './syncEventOptions.builder'\n\nexport default buildSchema({\n\tid: 'listenEventOptions',\n\tname: 'Listen to event action',\n\tdescription: 'Options for event.listen.',\n\tfields: {\n\t\t...syncEventOptionsBuilder.fields,\n\t\tnamespace: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t},\n\t\teventName: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Event name',\n\t\t},\n\t\tlistenerDestinationDir: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Events destination directory',\n\t\t\thint: 'Where should I add your listeners?',\n\t\t\tdefaultValue: 'src/listeners',\n\t\t},\n\t\tversion: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Version',\n\t\t\thint: 'Set a version yourself instead of letting me generate one for you',\n\t\t\tisPrivate: true,\n\t\t},\n\t},\n})\n"],"file":"listenEventOptions.builder.js"}
|