@sprucelabs/spruce-cli 14.29.13 → 14.29.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.d.ts +3 -0
  3. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js +37 -0
  4. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.js.map +1 -0
  5. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.d.ts +3 -0
  6. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js +51 -0
  7. package/build/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.js.map +1 -0
  8. package/build/.spruce/schemas/schemas.types.d.ts +84 -16
  9. package/build/.spruce/schemas/schemas.types.js.map +1 -1
  10. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js +2 -2
  11. package/build/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.js.map +1 -1
  12. package/build/__tests__/testDirsAndFiles/related_schemas/v2020_10_06/skillWithExtraField.builder.d.ts +1 -1
  13. package/build/features/skill/actions/LoginAction.js +1 -1
  14. package/build/features/skill/actions/LoginAction.js.map +1 -1
  15. package/build/features/skill/actions/RegisterAction.js +1 -1
  16. package/build/features/skill/actions/RegisterAction.js.map +1 -1
  17. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js +1 -1
  18. package/build/schemas/v2020_07_22/setupTestsOptions.builder.js.map +1 -1
  19. package/package.json +26 -26
  20. package/src/.spruce/schemas/heartwood/v2021_02_11/listViewsResponsePayload.schema.ts +25 -0
  21. package/src/.spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema.ts +43 -0
  22. package/src/.spruce/schemas/schemas.types.ts +102 -18
  23. package/src/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.ts +2 -2
  24. package/src/features/skill/actions/LoginAction.ts +1 -1
  25. package/src/features/skill/actions/RegisterAction.ts +1 -1
  26. package/src/schemas/v2020_07_22/setupTestsOptions.builder.ts +1 -1
@@ -22,9 +22,9 @@ var setupTestsOptionsSchema = {
22
22
  options: undefined
23
23
  },
24
24
 
25
- /** Skill slug. */
25
+ /** Namespace. */
26
26
  'skillSlug': {
27
- label: 'Skill slug',
27
+ label: 'Namespace',
28
28
  type: 'text',
29
29
  isRequired: true,
30
30
  options: undefined
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.ts"],"names":["setupTestsOptionsSchema","id","version","namespace","name","description","fields","label","type","isRequired","options","undefined","SchemaRegistry","getInstance","trackSchema"],"mappings":";;;;;;;AAAA;;AAKA,IAAMA,uBAAoF,GAAI;AAC7FC,EAAAA,EAAE,EAAE,mBADyF;AAE7FC,EAAAA,OAAO,EAAE,aAFoF;AAG7FC,EAAAA,SAAS,EAAE,WAHkF;AAI7FC,EAAAA,IAAI,EAAE,qBAJuF;AAK7FC,EAAAA,WAAW,EAAE,+EALgF;AAMzFC,EAAAA,MAAM,EAAE;AACA;AACA,kBAAc;AACVC,MAAAA,KAAK,EAAE,mBADG;AAEVC,MAAAA,IAAI,EAAE,OAFI;AAGVC,MAAAA,UAAU,EAAE,IAHF;AAIVC,MAAAA,OAAO,EAAEC;AAJC,KAFd;;AAQA;AACA,iBAAa;AACTJ,MAAAA,KAAK,EAAE,YADE;AAETC,MAAAA,IAAI,EAAE,MAFG;AAGTC,MAAAA,UAAU,EAAE,IAHH;AAITC,MAAAA,OAAO,EAAEC;AAJA;AATb;AANiF,CAA9F;;AAwBAC,uBAAeC,WAAf,GAA6BC,WAA7B,CAAyCd,uBAAzC;;eAEeA,uB","sourcesContent":["import { SchemaRegistry } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '../../schemas.types'\n\n\n\nconst setupTestsOptionsSchema: SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptionsSchema = {\n\tid: 'setupTestsOptions',\n\tversion: 'v2020_07_22',\n\tnamespace: 'SpruceCli',\n\tname: 'Setup tests options',\n\tdescription: 'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\t fields: {\n\t /** Demo phone number. */\n\t 'demoNumber': {\n\t label: 'Demo phone number',\n\t type: 'phone',\n\t isRequired: true,\n\t options: undefined\n\t },\n\t /** Skill slug. */\n\t 'skillSlug': {\n\t label: 'Skill slug',\n\t type: 'text',\n\t isRequired: true,\n\t options: undefined\n\t },\n\t }\n}\n\nSchemaRegistry.getInstance().trackSchema(setupTestsOptionsSchema)\n\nexport default setupTestsOptionsSchema\n"],"file":"setupTestsOptions.schema.js"}
1
+ {"version":3,"sources":["../../../../../src/.spruce/schemas/spruceCli/v2020_07_22/setupTestsOptions.schema.ts"],"names":["setupTestsOptionsSchema","id","version","namespace","name","description","fields","label","type","isRequired","options","undefined","SchemaRegistry","getInstance","trackSchema"],"mappings":";;;;;;;AAAA;;AAKA,IAAMA,uBAAoF,GAAI;AAC7FC,EAAAA,EAAE,EAAE,mBADyF;AAE7FC,EAAAA,OAAO,EAAE,aAFoF;AAG7FC,EAAAA,SAAS,EAAE,WAHkF;AAI7FC,EAAAA,IAAI,EAAE,qBAJuF;AAK7FC,EAAAA,WAAW,EAAE,+EALgF;AAMzFC,EAAAA,MAAM,EAAE;AACA;AACA,kBAAc;AACVC,MAAAA,KAAK,EAAE,mBADG;AAEVC,MAAAA,IAAI,EAAE,OAFI;AAGVC,MAAAA,UAAU,EAAE,IAHF;AAIVC,MAAAA,OAAO,EAAEC;AAJC,KAFd;;AAQA;AACA,iBAAa;AACTJ,MAAAA,KAAK,EAAE,WADE;AAETC,MAAAA,IAAI,EAAE,MAFG;AAGTC,MAAAA,UAAU,EAAE,IAHH;AAITC,MAAAA,OAAO,EAAEC;AAJA;AATb;AANiF,CAA9F;;AAwBAC,uBAAeC,WAAf,GAA6BC,WAA7B,CAAyCd,uBAAzC;;eAEeA,uB","sourcesContent":["import { SchemaRegistry } from '@sprucelabs/schema'\nimport { SpruceSchemas } from '../../schemas.types'\n\n\n\nconst setupTestsOptionsSchema: SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOptionsSchema = {\n\tid: 'setupTestsOptions',\n\tversion: 'v2020_07_22',\n\tnamespace: 'SpruceCli',\n\tname: 'Setup tests options',\n\tdescription: 'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\t fields: {\n\t /** Demo phone number. */\n\t 'demoNumber': {\n\t label: 'Demo phone number',\n\t type: 'phone',\n\t isRequired: true,\n\t options: undefined\n\t },\n\t /** Namespace. */\n\t 'skillSlug': {\n\t label: 'Namespace',\n\t type: 'text',\n\t isRequired: true,\n\t options: undefined\n\t },\n\t }\n}\n\nSchemaRegistry.getInstance().trackSchema(setupTestsOptionsSchema)\n\nexport default setupTestsOptionsSchema\n"],"file":"setupTestsOptions.schema.js"}
@@ -40,7 +40,7 @@ declare const _default: {
40
40
  options: undefined;
41
41
  };
42
42
  slug: {
43
- label: "Slug";
43
+ label: "Namespace";
44
44
  type: "text";
45
45
  isRequired: true;
46
46
  options: undefined;
@@ -47,7 +47,7 @@ var optionsSchema = (0, _schema.buildSchema)({
47
47
  fields: {
48
48
  skillSlug: {
49
49
  type: 'text',
50
- label: 'Skill slug'
50
+ label: 'Namespace'
51
51
  }
52
52
  }
53
53
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/skill/actions/LoginAction.ts"],"names":["optionsSchema","id","description","fields","skillSlug","type","label","LoginAction","options","validateAndNormalizeOptions","person","Service","getLoggedInPerson","loginResponse","skillResponse","ui","renderLine","prompt","isRequired","phone","Action","execute","connectToApi","client","emit","payload","shouldOnlyShowMine","skillResults","eventResponseUtil","getFirstResponseOrThrow","skills","match","find","s","slug","errors","SpruceError","code","friendlyMessage","length","error","choices","map","name","value","selectedSkillId","filter","target","skillId","shouldIncludeApiKey","currentSkillResults","skill","updateCurrentSkill","summaryLines","meta","actionUtil","mergeActionResults","AbstractAction"],"mappings":"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","sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport { generateSkillSummaryLines } from './RegisterAction'\n\nconst optionsSchema = buildSchema({\n\tid: 'loginSkillAction',\n\tdescription:\n\t\t'If you already registered your skill but lost your env or changed environments.',\n\tfields: {\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Skill slug',\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class LoginAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['login.skill']\n\tpublic invocationMessage = 'Logging in as skill... ⚡️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { skillSlug } = this.validateAndNormalizeOptions(options)\n\n\t\tconst person = this.Service('auth').getLoggedInPerson()\n\t\tlet loginResponse: FeatureActionResponse = {}\n\t\tlet skillResponse: FeatureActionResponse = {}\n\n\t\tif (!person) {\n\t\t\tthis.ui.renderLine(\n\t\t\t\t'You gotta login as a person before you can login as a skill.'\n\t\t\t)\n\n\t\t\tconst phone = await this.ui.prompt({\n\t\t\t\ttype: 'phone',\n\t\t\t\tlabel: 'Phone number',\n\t\t\t\tisRequired: true,\n\t\t\t})\n\n\t\t\tloginResponse = await this.Action('person', 'login').execute({\n\t\t\t\tphone,\n\t\t\t})\n\t\t}\n\n\t\tconst client = await this.connectToApi()\n\t\tconst skillResults = await client.emit('list-skills::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tshouldOnlyShowMine: true,\n\t\t\t},\n\t\t})\n\n\t\tlet { skills } = eventResponseUtil.getFirstResponseOrThrow(skillResults)\n\n\t\tif (skillSlug) {\n\t\t\tconst match = skills.find((s) => s.slug === skillSlug)\n\n\t\t\tif (!match) {\n\t\t\t\treturn {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\t\tcode: 'SKILL_NOT_FOUND',\n\t\t\t\t\t\t\tfriendlyMessage: `I couldn't find a skill that you own with the slug: ${skillSlug}`,\n\t\t\t\t\t\t}),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tskills = [match]\n\t\t}\n\n\t\tif (skills.length === 0) {\n\t\t\tconst error = new SpruceError({ code: 'NO_SKILLS_REGISTERED' })\n\n\t\t\tif (error) {\n\t\t\t\treturn {\n\t\t\t\t\terrors: [error],\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (skills.length > 1) {\n\t\t\tconst selectedSkillId = await this.ui.prompt({\n\t\t\t\ttype: 'select',\n\t\t\t\tlabel: 'Which skill are we logging in as?',\n\t\t\t\tisRequired: true,\n\t\t\t\toptions: {\n\t\t\t\t\tchoices: skills.map((s) => ({\n\t\t\t\t\t\tlabel: s.name,\n\t\t\t\t\t\tvalue: s.id,\n\t\t\t\t\t})),\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tskills = skills.filter((s) => s.id === selectedSkillId)\n\t\t}\n\n\t\tif (skills.length === 1) {\n\t\t\tconst currentSkillResults = await client.emit('get-skill::v2020_12_25', {\n\t\t\t\ttarget: {\n\t\t\t\t\tskillId: skills[0].id,\n\t\t\t\t},\n\t\t\t\tpayload: {\n\t\t\t\t\tshouldIncludeApiKey: true,\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tconst { skill } =\n\t\t\t\teventResponseUtil.getFirstResponseOrThrow(currentSkillResults)\n\n\t\t\tthis.Service('auth').updateCurrentSkill(skill)\n\n\t\t\tskillResponse.summaryLines = generateSkillSummaryLines(skill)\n\t\t\tskillResponse.meta = {\n\t\t\t\tskill,\n\t\t\t}\n\t\t}\n\n\t\treturn actionUtil.mergeActionResults(loginResponse, skillResponse)\n\t}\n}\n"],"file":"LoginAction.js"}
1
+ {"version":3,"sources":["../../../../src/features/skill/actions/LoginAction.ts"],"names":["optionsSchema","id","description","fields","skillSlug","type","label","LoginAction","options","validateAndNormalizeOptions","person","Service","getLoggedInPerson","loginResponse","skillResponse","ui","renderLine","prompt","isRequired","phone","Action","execute","connectToApi","client","emit","payload","shouldOnlyShowMine","skillResults","eventResponseUtil","getFirstResponseOrThrow","skills","match","find","s","slug","errors","SpruceError","code","friendlyMessage","length","error","choices","map","name","value","selectedSkillId","filter","target","skillId","shouldIncludeApiKey","currentSkillResults","skill","updateCurrentSkill","summaryLines","meta","actionUtil","mergeActionResults","AbstractAction"],"mappings":"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","sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport SpruceError from '../../../errors/SpruceError'\nimport actionUtil from '../../../utilities/action.utility'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\nimport { generateSkillSummaryLines } from './RegisterAction'\n\nconst optionsSchema = buildSchema({\n\tid: 'loginSkillAction',\n\tdescription:\n\t\t'If you already registered your skill but lost your env or changed environments.',\n\tfields: {\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class LoginAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['login.skill']\n\tpublic invocationMessage = 'Logging in as skill... ⚡️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { skillSlug } = this.validateAndNormalizeOptions(options)\n\n\t\tconst person = this.Service('auth').getLoggedInPerson()\n\t\tlet loginResponse: FeatureActionResponse = {}\n\t\tlet skillResponse: FeatureActionResponse = {}\n\n\t\tif (!person) {\n\t\t\tthis.ui.renderLine(\n\t\t\t\t'You gotta login as a person before you can login as a skill.'\n\t\t\t)\n\n\t\t\tconst phone = await this.ui.prompt({\n\t\t\t\ttype: 'phone',\n\t\t\t\tlabel: 'Phone number',\n\t\t\t\tisRequired: true,\n\t\t\t})\n\n\t\t\tloginResponse = await this.Action('person', 'login').execute({\n\t\t\t\tphone,\n\t\t\t})\n\t\t}\n\n\t\tconst client = await this.connectToApi()\n\t\tconst skillResults = await client.emit('list-skills::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tshouldOnlyShowMine: true,\n\t\t\t},\n\t\t})\n\n\t\tlet { skills } = eventResponseUtil.getFirstResponseOrThrow(skillResults)\n\n\t\tif (skillSlug) {\n\t\t\tconst match = skills.find((s) => s.slug === skillSlug)\n\n\t\t\tif (!match) {\n\t\t\t\treturn {\n\t\t\t\t\terrors: [\n\t\t\t\t\t\tnew SpruceError({\n\t\t\t\t\t\t\tcode: 'SKILL_NOT_FOUND',\n\t\t\t\t\t\t\tfriendlyMessage: `I couldn't find a skill that you own with the slug: ${skillSlug}`,\n\t\t\t\t\t\t}),\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tskills = [match]\n\t\t}\n\n\t\tif (skills.length === 0) {\n\t\t\tconst error = new SpruceError({ code: 'NO_SKILLS_REGISTERED' })\n\n\t\t\tif (error) {\n\t\t\t\treturn {\n\t\t\t\t\terrors: [error],\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (skills.length > 1) {\n\t\t\tconst selectedSkillId = await this.ui.prompt({\n\t\t\t\ttype: 'select',\n\t\t\t\tlabel: 'Which skill are we logging in as?',\n\t\t\t\tisRequired: true,\n\t\t\t\toptions: {\n\t\t\t\t\tchoices: skills.map((s) => ({\n\t\t\t\t\t\tlabel: s.name,\n\t\t\t\t\t\tvalue: s.id,\n\t\t\t\t\t})),\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tskills = skills.filter((s) => s.id === selectedSkillId)\n\t\t}\n\n\t\tif (skills.length === 1) {\n\t\t\tconst currentSkillResults = await client.emit('get-skill::v2020_12_25', {\n\t\t\t\ttarget: {\n\t\t\t\t\tskillId: skills[0].id,\n\t\t\t\t},\n\t\t\t\tpayload: {\n\t\t\t\t\tshouldIncludeApiKey: true,\n\t\t\t\t},\n\t\t\t})\n\n\t\t\tconst { skill } =\n\t\t\t\teventResponseUtil.getFirstResponseOrThrow(currentSkillResults)\n\n\t\t\tthis.Service('auth').updateCurrentSkill(skill)\n\n\t\t\tskillResponse.summaryLines = generateSkillSummaryLines(skill)\n\t\t\tskillResponse.meta = {\n\t\t\t\tskill,\n\t\t\t}\n\t\t}\n\n\t\treturn actionUtil.mergeActionResults(loginResponse, skillResponse)\n\t}\n}\n"],"file":"LoginAction.js"}
@@ -47,7 +47,7 @@ var optionsSchema = (0, _schema.buildSchema)({
47
47
  },
48
48
  nameKebab: {
49
49
  type: 'text',
50
- label: 'Slug',
50
+ label: 'Namespace',
51
51
  isRequired: true
52
52
  },
53
53
  description: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/skill/actions/RegisterAction.ts"],"names":["optionsSchema","id","description","fields","nameReadable","type","label","isRequired","nameKebab","RegisterAction","options","validateAndNormalizeOptions","connectToApi","client","emit","payload","name","slug","results","eventResponseUtil","getFirstResponseOrThrow","skill","summaryLines","generateSkillSummaryLines","Service","updateCurrentSkill","hints","meta","errors","AbstractAction","apiKey"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,qBAD6B;AAEjCC,EAAAA,WAAW,EACV,oFAHgC;AAIjCC,EAAAA,MAAM,EAAE;AACPC,IAAAA,YAAY,EAAE;AACbC,MAAAA,IAAI,EAAE,MADO;AAEbC,MAAAA,KAAK,8BAFQ;AAGbC,MAAAA,UAAU,EAAE;AAHC,KADP;AAMPC,IAAAA,SAAS,EAAE;AACVH,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE,MAFG;AAGVC,MAAAA,UAAU,EAAE;AAHF,KANJ;AAWPL,IAAAA,WAAW,EAAE;AACZG,MAAAA,IAAI,EAAE,MADM;AAEZC,MAAAA,KAAK,EAAE;AAFK;AAXN;AAJyB,CAAZ,CAAtB;;IAyBqBG,c;;;;;;;;;;;;;;;sGACkBT,a;uGACd,CAAC,gBAAD,EAAmB,UAAnB,C;0GACG,8B;;;;;;;mGAE3B,iBAAqBU,OAArB;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,wCAEE,KAAKC,2BAAL,CAAiCD,OAAjC,CAFF,EACSN,YADT,yBACSA,YADT,EACuBI,SADvB,yBACuBA,SADvB,EACkCN,WADlC,yBACkCA,WADlC;AAAA;AAAA,uBAIsB,KAAKU,YAAL,EAJtB;;AAAA;AAIOC,gBAAAA,MAJP;AAAA;AAAA,uBAKuBA,MAAM,CAACC,IAAP,CAAY,6BAAZ,EAA2C;AAChEC,kBAAAA,OAAO,EAAE;AACRC,oBAAAA,IAAI,EAAEZ,YADE;AAERa,oBAAAA,IAAI,EAAET,SAFE;AAGRN,oBAAAA,WAAW,EAAXA;AAHQ;AADuD,iBAA3C,CALvB;;AAAA;AAKOgB,gBAAAA,OALP;AAAA;AAAA,wCAcoBC,oCAAkBC,uBAAlB,CAA0CF,OAA1C,CAdpB,EAcUG,KAdV,yBAcUA,KAdV;AAgBQC,gBAAAA,YAhBR,GAgBuBC,yBAAyB,CAACF,KAAD,CAhBhD;AAkBE,qBAAKG,OAAL,CAAa,MAAb,EAAqBC,kBAArB,CAAwCJ,KAAxC;AAlBF,iDAoBS;AACNC,kBAAAA,YAAY,EAAZA,YADM;AAENI,kBAAAA,KAAK,EAAE,CACN,2BADM,EAEN,2CAFM,EAGN,oDAHM,CAFD;AAONC,kBAAAA,IAAI,EAAE;AACLN,oBAAAA,KAAK,EAALA;AADK;AAPA,iBApBT;;AAAA;AAAA;AAAA;AAAA,iDAgCS;AACNK,kBAAAA,KAAK,EAAE,sEADD;AAINE,kBAAAA,MAAM,EAAE;AAJF,iBAhCT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAL2CC,2B;;;;AA+CrC,SAASN,yBAAT,CAAmCF,KAAnC,EAA2D;AACjE,SAAO,iBACGA,KAAK,CAACL,IADT,mBAEGK,KAAK,CAACJ,IAFT,iBAGCI,KAAK,CAACpB,EAHP,sBAIMoB,KAAK,CAACS,MAJZ,EAAP;AAMA","sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport { RegisteredSkill } from '../../../types/cli.types'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'registerSkillAction',\n\tdescription:\n\t\t'Register your skill with Mercury so you can start communicating with other skills.',\n\tfields: {\n\t\tnameReadable: {\n\t\t\ttype: 'text',\n\t\t\tlabel: `What is your skill's name?`,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameKebab: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Slug',\n\t\t\tisRequired: true,\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Describe your skill',\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class RegisterAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['register.skill', 'register']\n\tpublic invocationMessage = 'Registering your skill... ⚡️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { nameReadable, nameKebab, description } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('register-skill::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tname: nameReadable,\n\t\t\t\tslug: nameKebab,\n\t\t\t\tdescription,\n\t\t\t},\n\t\t})\n\n\t\ttry {\n\t\t\tconst { skill } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\t\tconst summaryLines = generateSkillSummaryLines(skill)\n\n\t\t\tthis.Service('auth').updateCurrentSkill(skill)\n\n\t\t\treturn {\n\t\t\t\tsummaryLines,\n\t\t\t\thints: [\n\t\t\t\t\t'Your skill is registered.',\n\t\t\t\t\t'You can check your .env for more details.',\n\t\t\t\t\t\"If you're ready to deploy, try `spruce deploy`. 🚀\",\n\t\t\t\t],\n\t\t\t\tmeta: {\n\t\t\t\t\tskill,\n\t\t\t\t},\n\t\t\t}\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\thints: [\n\t\t\t\t\t`If you've already registered your skill, try 'spruce skill.login'!`,\n\t\t\t\t],\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport function generateSkillSummaryLines(skill: RegisteredSkill) {\n\treturn [\n\t\t`Name: ${skill.name}`,\n\t\t`Slug: ${skill.slug}`,\n\t\t`ID: ${skill.id}`,\n\t\t`API Key: ${skill.apiKey}`,\n\t]\n}\n"],"file":"RegisterAction.js"}
1
+ {"version":3,"sources":["../../../../src/features/skill/actions/RegisterAction.ts"],"names":["optionsSchema","id","description","fields","nameReadable","type","label","isRequired","nameKebab","RegisterAction","options","validateAndNormalizeOptions","connectToApi","client","emit","payload","name","slug","results","eventResponseUtil","getFirstResponseOrThrow","skill","summaryLines","generateSkillSummaryLines","Service","updateCurrentSkill","hints","meta","errors","AbstractAction","apiKey"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;AAGA,IAAMA,aAAa,GAAG,yBAAY;AACjCC,EAAAA,EAAE,EAAE,qBAD6B;AAEjCC,EAAAA,WAAW,EACV,oFAHgC;AAIjCC,EAAAA,MAAM,EAAE;AACPC,IAAAA,YAAY,EAAE;AACbC,MAAAA,IAAI,EAAE,MADO;AAEbC,MAAAA,KAAK,8BAFQ;AAGbC,MAAAA,UAAU,EAAE;AAHC,KADP;AAMPC,IAAAA,SAAS,EAAE;AACVH,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE,WAFG;AAGVC,MAAAA,UAAU,EAAE;AAHF,KANJ;AAWPL,IAAAA,WAAW,EAAE;AACZG,MAAAA,IAAI,EAAE,MADM;AAEZC,MAAAA,KAAK,EAAE;AAFK;AAXN;AAJyB,CAAZ,CAAtB;;IAyBqBG,c;;;;;;;;;;;;;;;sGACkBT,a;uGACd,CAAC,gBAAD,EAAmB,UAAnB,C;0GACG,8B;;;;;;;mGAE3B,iBAAqBU,OAArB;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,wCAEE,KAAKC,2BAAL,CAAiCD,OAAjC,CAFF,EACSN,YADT,yBACSA,YADT,EACuBI,SADvB,yBACuBA,SADvB,EACkCN,WADlC,yBACkCA,WADlC;AAAA;AAAA,uBAIsB,KAAKU,YAAL,EAJtB;;AAAA;AAIOC,gBAAAA,MAJP;AAAA;AAAA,uBAKuBA,MAAM,CAACC,IAAP,CAAY,6BAAZ,EAA2C;AAChEC,kBAAAA,OAAO,EAAE;AACRC,oBAAAA,IAAI,EAAEZ,YADE;AAERa,oBAAAA,IAAI,EAAET,SAFE;AAGRN,oBAAAA,WAAW,EAAXA;AAHQ;AADuD,iBAA3C,CALvB;;AAAA;AAKOgB,gBAAAA,OALP;AAAA;AAAA,wCAcoBC,oCAAkBC,uBAAlB,CAA0CF,OAA1C,CAdpB,EAcUG,KAdV,yBAcUA,KAdV;AAgBQC,gBAAAA,YAhBR,GAgBuBC,yBAAyB,CAACF,KAAD,CAhBhD;AAkBE,qBAAKG,OAAL,CAAa,MAAb,EAAqBC,kBAArB,CAAwCJ,KAAxC;AAlBF,iDAoBS;AACNC,kBAAAA,YAAY,EAAZA,YADM;AAENI,kBAAAA,KAAK,EAAE,CACN,2BADM,EAEN,2CAFM,EAGN,oDAHM,CAFD;AAONC,kBAAAA,IAAI,EAAE;AACLN,oBAAAA,KAAK,EAALA;AADK;AAPA,iBApBT;;AAAA;AAAA;AAAA;AAAA,iDAgCS;AACNK,kBAAAA,KAAK,EAAE,sEADD;AAINE,kBAAAA,MAAM,EAAE;AAJF,iBAhCT;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;EAL2CC,2B;;;;AA+CrC,SAASN,yBAAT,CAAmCF,KAAnC,EAA2D;AACjE,SAAO,iBACGA,KAAK,CAACL,IADT,mBAEGK,KAAK,CAACJ,IAFT,iBAGCI,KAAK,CAACpB,EAHP,sBAIMoB,KAAK,CAACS,MAJZ,EAAP;AAMA","sourcesContent":["import { buildSchema, SchemaValues } from '@sprucelabs/schema'\nimport { eventResponseUtil } from '@sprucelabs/spruce-event-utils'\nimport { RegisteredSkill } from '../../../types/cli.types'\nimport AbstractAction from '../../AbstractAction'\nimport { FeatureActionResponse } from '../../features.types'\n\nconst optionsSchema = buildSchema({\n\tid: 'registerSkillAction',\n\tdescription:\n\t\t'Register your skill with Mercury so you can start communicating with other skills.',\n\tfields: {\n\t\tnameReadable: {\n\t\t\ttype: 'text',\n\t\t\tlabel: `What is your skill's name?`,\n\t\t\tisRequired: true,\n\t\t},\n\t\tnameKebab: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t\tisRequired: true,\n\t\t},\n\t\tdescription: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Describe your skill',\n\t\t},\n\t},\n})\n\ntype OptionsSchema = typeof optionsSchema\ntype Options = SchemaValues<OptionsSchema>\n\nexport default class RegisterAction extends AbstractAction<OptionsSchema> {\n\tpublic optionsSchema: OptionsSchema = optionsSchema\n\tpublic commandAliases = ['register.skill', 'register']\n\tpublic invocationMessage = 'Registering your skill... ⚡️'\n\n\tpublic async execute(options: Options): Promise<FeatureActionResponse> {\n\t\tconst { nameReadable, nameKebab, description } =\n\t\t\tthis.validateAndNormalizeOptions(options)\n\n\t\tconst client = await this.connectToApi()\n\t\tconst results = await client.emit('register-skill::v2020_12_25', {\n\t\t\tpayload: {\n\t\t\t\tname: nameReadable,\n\t\t\t\tslug: nameKebab,\n\t\t\t\tdescription,\n\t\t\t},\n\t\t})\n\n\t\ttry {\n\t\t\tconst { skill } = eventResponseUtil.getFirstResponseOrThrow(results)\n\n\t\t\tconst summaryLines = generateSkillSummaryLines(skill)\n\n\t\t\tthis.Service('auth').updateCurrentSkill(skill)\n\n\t\t\treturn {\n\t\t\t\tsummaryLines,\n\t\t\t\thints: [\n\t\t\t\t\t'Your skill is registered.',\n\t\t\t\t\t'You can check your .env for more details.',\n\t\t\t\t\t\"If you're ready to deploy, try `spruce deploy`. 🚀\",\n\t\t\t\t],\n\t\t\t\tmeta: {\n\t\t\t\t\tskill,\n\t\t\t\t},\n\t\t\t}\n\t\t} catch (err) {\n\t\t\treturn {\n\t\t\t\thints: [\n\t\t\t\t\t`If you've already registered your skill, try 'spruce skill.login'!`,\n\t\t\t\t],\n\t\t\t\terrors: [err],\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport function generateSkillSummaryLines(skill: RegisteredSkill) {\n\treturn [\n\t\t`Name: ${skill.name}`,\n\t\t`Slug: ${skill.slug}`,\n\t\t`ID: ${skill.id}`,\n\t\t`API Key: ${skill.apiKey}`,\n\t]\n}\n"],"file":"RegisterAction.js"}
@@ -19,7 +19,7 @@ var _default = (0, _schema.buildSchema)({
19
19
  },
20
20
  skillSlug: {
21
21
  type: 'text',
22
- label: 'Skill slug',
22
+ label: 'Namespace',
23
23
  isRequired: true
24
24
  }
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/schemas/v2020_07_22/setupTestsOptions.builder.ts"],"names":["id","name","description","fields","demoNumber","type","label","isRequired","skillSlug"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,mBADsB;AAE1BC,EAAAA,IAAI,EAAE,qBAFoB;AAG1BC,EAAAA,WAAW,EACV,+EAJyB;AAK1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,UAAU,EAAE;AACXC,MAAAA,IAAI,EAAE,OADK;AAEXC,MAAAA,KAAK,EAAE,mBAFI;AAGXC,MAAAA,UAAU,EAAE;AAHD,KADL;AAMPC,IAAAA,SAAS,EAAE;AACVH,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE,YAFG;AAGVC,MAAAA,UAAU,EAAE;AAHF;AANJ;AALkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupTestsOptions',\n\tname: 'Setup tests options',\n\tdescription:\n\t\t'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\tfields: {\n\t\tdemoNumber: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Demo phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Skill slug',\n\t\t\tisRequired: true,\n\t\t},\n\t},\n})\n"],"file":"setupTestsOptions.builder.js"}
1
+ {"version":3,"sources":["../../../src/schemas/v2020_07_22/setupTestsOptions.builder.ts"],"names":["id","name","description","fields","demoNumber","type","label","isRequired","skillSlug"],"mappings":";;;;;;;AAAA;;eAEe,yBAAY;AAC1BA,EAAAA,EAAE,EAAE,mBADsB;AAE1BC,EAAAA,IAAI,EAAE,qBAFoB;AAG1BC,EAAAA,WAAW,EACV,+EAJyB;AAK1BC,EAAAA,MAAM,EAAE;AACPC,IAAAA,UAAU,EAAE;AACXC,MAAAA,IAAI,EAAE,OADK;AAEXC,MAAAA,KAAK,EAAE,mBAFI;AAGXC,MAAAA,UAAU,EAAE;AAHD,KADL;AAMPC,IAAAA,SAAS,EAAE;AACVH,MAAAA,IAAI,EAAE,MADI;AAEVC,MAAAA,KAAK,EAAE,WAFG;AAGVC,MAAAA,UAAU,EAAE;AAHF;AANJ;AALkB,CAAZ,C","sourcesContent":["import { buildSchema } from '@sprucelabs/schema'\n\nexport default buildSchema({\n\tid: 'setupTestsOptions',\n\tname: 'Setup tests options',\n\tdescription:\n\t\t'Use this with in your CI/CD environment to get your skill ready to run tests.',\n\tfields: {\n\t\tdemoNumber: {\n\t\t\ttype: 'phone',\n\t\t\tlabel: 'Demo phone number',\n\t\t\tisRequired: true,\n\t\t},\n\t\tskillSlug: {\n\t\t\ttype: 'text',\n\t\t\tlabel: 'Namespace',\n\t\t\tisRequired: true,\n\t\t},\n\t},\n})\n"],"file":"setupTestsOptions.builder.js"}
package/package.json CHANGED
@@ -18,7 +18,7 @@
18
18
  ]
19
19
  },
20
20
  "license": "MIT",
21
- "version": "14.29.13",
21
+ "version": "14.29.17",
22
22
  "bin": {
23
23
  "spruce": "./build/index.js"
24
24
  },
@@ -76,19 +76,19 @@
76
76
  "@babel/plugin-proposal-decorators": "^7.16.5",
77
77
  "@babel/runtime": "^7.16.5",
78
78
  "@jest/reporters": "^27.4.5",
79
- "@sprucelabs/error": "^5.0.353",
80
- "@sprucelabs/heartwood-view-controllers": "^52.1.6",
81
- "@sprucelabs/jest-json-reporter": "^6.0.292",
82
- "@sprucelabs/mercury-client": "^19.2.12",
83
- "@sprucelabs/mercury-event-emitter": "^19.2.12",
84
- "@sprucelabs/mercury-types": "^26.1.1099",
85
- "@sprucelabs/schema": "^25.4.149",
86
- "@sprucelabs/spruce-core-schemas": "^22.6.346",
87
- "@sprucelabs/spruce-event-plugin": "^19.1.7",
88
- "@sprucelabs/spruce-event-utils": "^17.1.387",
89
- "@sprucelabs/spruce-skill-booter": "^19.1.7",
90
- "@sprucelabs/spruce-skill-utils": "^22.2.50",
91
- "@sprucelabs/spruce-templates": "^14.29.13",
79
+ "@sprucelabs/error": "^5.0.355",
80
+ "@sprucelabs/heartwood-view-controllers": "^52.4.9",
81
+ "@sprucelabs/jest-json-reporter": "^6.0.294",
82
+ "@sprucelabs/mercury-client": "^19.2.35",
83
+ "@sprucelabs/mercury-event-emitter": "^19.2.35",
84
+ "@sprucelabs/mercury-types": "^26.1.1119",
85
+ "@sprucelabs/schema": "^25.5.16",
86
+ "@sprucelabs/spruce-core-schemas": "^22.7.19",
87
+ "@sprucelabs/spruce-event-plugin": "^19.3.1",
88
+ "@sprucelabs/spruce-event-utils": "^17.1.407",
89
+ "@sprucelabs/spruce-skill-booter": "^19.3.1",
90
+ "@sprucelabs/spruce-skill-utils": "^22.2.69",
91
+ "@sprucelabs/spruce-templates": "^14.29.17",
92
92
  "@typescript-eslint/eslint-plugin": "^5.8.0",
93
93
  "@typescript-eslint/parser": "^5.8.0",
94
94
  "cfonts": "^2.10.0",
@@ -96,7 +96,7 @@
96
96
  "chokidar": "^3.5.2",
97
97
  "cli-table3": "^0.6.0",
98
98
  "commander": "^7.2.0",
99
- "core-js": "^3.20.0",
99
+ "core-js": "^3.20.1",
100
100
  "emphasize": "^4.2.0",
101
101
  "fs-extra": "^10.0.0",
102
102
  "gifwrap": "SimenB/gifwrap#patch-1",
@@ -119,16 +119,16 @@
119
119
  "uuid": "^8.3.2"
120
120
  },
121
121
  "devDependencies": {
122
- "@sprucelabs/data-stores": "^7.2.50",
123
- "@sprucelabs/jest-sheets-reporter": "^1.2.290",
124
- "@sprucelabs/mercury-core-events": "^1.6.339",
125
- "@sprucelabs/resolve-path-aliases": "^1.0.246",
126
- "@sprucelabs/spruce-conversation-plugin": "^19.1.7",
127
- "@sprucelabs/spruce-deploy-plugin": "^19.1.7",
128
- "@sprucelabs/spruce-store-plugin": "^19.1.7",
129
- "@sprucelabs/spruce-test-fixtures": "^19.1.7",
122
+ "@sprucelabs/data-stores": "^7.2.68",
123
+ "@sprucelabs/jest-sheets-reporter": "^1.2.291",
124
+ "@sprucelabs/mercury-core-events": "^1.7.18",
125
+ "@sprucelabs/resolve-path-aliases": "^1.0.247",
126
+ "@sprucelabs/spruce-conversation-plugin": "^19.3.1",
127
+ "@sprucelabs/spruce-deploy-plugin": "^19.3.1",
128
+ "@sprucelabs/spruce-store-plugin": "^19.3.1",
129
+ "@sprucelabs/spruce-test-fixtures": "^19.3.1",
130
130
  "@sprucelabs/test": "^7.7.265",
131
- "@sprucelabs/test-utils": "^3.0.347",
131
+ "@sprucelabs/test-utils": "^3.0.352",
132
132
  "@types/blessed": "^0.1.19",
133
133
  "@types/eslint": "^8.2.1",
134
134
  "@types/fs-extra": "^9.0.13",
@@ -138,7 +138,7 @@
138
138
  "@types/lodash": "^4.14.178",
139
139
  "@types/md5": "^2.3.1",
140
140
  "@types/mkdirp": "^1.0.2",
141
- "@types/node": "^17.0.2",
141
+ "@types/node": "^17.0.4",
142
142
  "@types/promise.allsettled": "^1.0.3",
143
143
  "@types/ps-node": "^0.1.1",
144
144
  "@types/rimraf": "^3.0.2",
@@ -597,5 +597,5 @@
597
597
  "ora"
598
598
  ]
599
599
  },
600
- "gitHead": "fb3e21b87f017010e51d1647d39cb2598c08c7c8"
600
+ "gitHead": "19860f8c233d6bcb0f39f968704b0f8555d898f5"
601
601
  }
@@ -0,0 +1,25 @@
1
+ import { SchemaRegistry } from '@sprucelabs/schema'
2
+ import { SpruceSchemas } from '../../schemas.types'
3
+
4
+ import listViewsResultSchema_v2021_02_11 from '#spruce/schemas/heartwood/v2021_02_11/listViewsResult.schema'
5
+
6
+ const listViewsResponsePayloadSchema: SpruceSchemas.Heartwood.v2021_02_11.ListViewsResponsePayloadSchema = {
7
+ id: 'listViewsResponsePayload',
8
+ version: 'v2021_02_11',
9
+ namespace: 'Heartwood',
10
+ name: '',
11
+ fields: {
12
+ /** . */
13
+ 'views': {
14
+ type: 'schema',
15
+ isRequired: true,
16
+ isArray: true,
17
+ minArrayLength: 0,
18
+ options: {schema: listViewsResultSchema_v2021_02_11,}
19
+ },
20
+ }
21
+ }
22
+
23
+ SchemaRegistry.getInstance().trackSchema(listViewsResponsePayloadSchema)
24
+
25
+ export default listViewsResponsePayloadSchema
@@ -0,0 +1,43 @@
1
+ import { SchemaRegistry } from '@sprucelabs/schema'
2
+ import { SpruceSchemas } from '../../schemas.types'
3
+
4
+
5
+
6
+ const listViewsResultSchema: SpruceSchemas.Heartwood.v2021_02_11.ListViewsResultSchema = {
7
+ id: 'listViewsResult',
8
+ version: 'v2021_02_11',
9
+ namespace: 'Heartwood',
10
+ name: '',
11
+ fields: {
12
+ /** . */
13
+ 'namespace': {
14
+ type: 'text',
15
+ isRequired: true,
16
+ options: undefined
17
+ },
18
+ /** Skill view ids. For now this is every view, but soon will be only skill views */
19
+ 'svcIds': {
20
+ label: 'Skill view ids',
21
+ type: 'id',
22
+ isRequired: true,
23
+ hint: 'For now this is every view, but soon will be only skill views',
24
+ isArray: true,
25
+ minArrayLength: 0,
26
+ options: undefined
27
+ },
28
+ /** View ids. For now this is every view, but soon will be only views (not skill views) */
29
+ 'vcIds': {
30
+ label: 'View ids',
31
+ type: 'id',
32
+ isRequired: true,
33
+ hint: 'For now this is every view, but soon will be only views (not skill views)',
34
+ isArray: true,
35
+ minArrayLength: 0,
36
+ options: undefined
37
+ },
38
+ }
39
+ }
40
+
41
+ SchemaRegistry.getInstance().trackSchema(listViewsResultSchema)
42
+
43
+ export default listViewsResultSchema
@@ -374,44 +374,83 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
374
374
  namespace SpruceSchemas.Heartwood.v2021_02_11 {
375
375
 
376
376
 
377
- interface RegisterSkillViewsEmitPayload {
377
+ interface ListViewsResult {
378
378
 
379
379
 
380
- 'ids': string[]
381
-
382
- 'source': string
383
-
384
- 'theme'?: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Theme| undefined | null
380
+ 'namespace': string
381
+ /** Skill view ids. For now this is every view, but soon will be only skill views */
382
+ 'svcIds': string[]
383
+ /** View ids. For now this is every view, but soon will be only views (not skill views) */
384
+ 'vcIds': string[]
385
385
  }
386
386
 
387
- interface RegisterSkillViewsEmitPayloadSchema extends SpruceSchema.Schema {
388
- id: 'registerSkillViewsEmitPayload',
387
+ interface ListViewsResultSchema extends SpruceSchema.Schema {
388
+ id: 'listViewsResult',
389
389
  version: 'v2021_02_11',
390
390
  namespace: 'Heartwood',
391
391
  name: '',
392
392
  fields: {
393
393
  /** . */
394
- 'ids': {
394
+ 'namespace': {
395
395
  type: 'text',
396
396
  isRequired: true,
397
+ options: undefined
398
+ },
399
+ /** Skill view ids. For now this is every view, but soon will be only skill views */
400
+ 'svcIds': {
401
+ label: 'Skill view ids',
402
+ type: 'id',
403
+ isRequired: true,
404
+ hint: 'For now this is every view, but soon will be only skill views',
397
405
  isArray: true,
406
+ minArrayLength: 0,
398
407
  options: undefined
399
408
  },
400
- /** . */
401
- 'source': {
402
- type: 'text',
409
+ /** View ids. For now this is every view, but soon will be only views (not skill views) */
410
+ 'vcIds': {
411
+ label: 'View ids',
412
+ type: 'id',
403
413
  isRequired: true,
414
+ hint: 'For now this is every view, but soon will be only views (not skill views)',
415
+ isArray: true,
416
+ minArrayLength: 0,
404
417
  options: undefined
405
418
  },
419
+ }
420
+ }
421
+
422
+ type ListViewsResultEntity = SchemaEntity<SpruceSchemas.Heartwood.v2021_02_11.ListViewsResultSchema>
423
+
424
+ }
425
+
426
+
427
+ namespace SpruceSchemas.Heartwood.v2021_02_11 {
428
+
429
+
430
+ interface ListViewsResponsePayload {
431
+
432
+
433
+ 'views': SpruceSchemas.Heartwood.v2021_02_11.ListViewsResult[]
434
+ }
435
+
436
+ interface ListViewsResponsePayloadSchema extends SpruceSchema.Schema {
437
+ id: 'listViewsResponsePayload',
438
+ version: 'v2021_02_11',
439
+ namespace: 'Heartwood',
440
+ name: '',
441
+ fields: {
406
442
  /** . */
407
- 'theme': {
443
+ 'views': {
408
444
  type: 'schema',
409
- options: {schema: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.ThemeSchema,}
445
+ isRequired: true,
446
+ isArray: true,
447
+ minArrayLength: 0,
448
+ options: {schema: SpruceSchemas.Heartwood.v2021_02_11.ListViewsResultSchema,}
410
449
  },
411
450
  }
412
451
  }
413
452
 
414
- type RegisterSkillViewsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Heartwood.v2021_02_11.RegisterSkillViewsEmitPayloadSchema>
453
+ type ListViewsResponsePayloadEntity = SchemaEntity<SpruceSchemas.Heartwood.v2021_02_11.ListViewsResponsePayloadSchema>
415
454
 
416
455
  }
417
456
 
@@ -453,6 +492,51 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
453
492
  }
454
493
 
455
494
 
495
+ namespace SpruceSchemas.Heartwood.v2021_02_11 {
496
+
497
+
498
+ interface RegisterSkillViewsEmitPayload {
499
+
500
+
501
+ 'ids': string[]
502
+
503
+ 'source': string
504
+
505
+ 'theme'?: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Theme| undefined | null
506
+ }
507
+
508
+ interface RegisterSkillViewsEmitPayloadSchema extends SpruceSchema.Schema {
509
+ id: 'registerSkillViewsEmitPayload',
510
+ version: 'v2021_02_11',
511
+ namespace: 'Heartwood',
512
+ name: '',
513
+ fields: {
514
+ /** . */
515
+ 'ids': {
516
+ type: 'text',
517
+ isRequired: true,
518
+ isArray: true,
519
+ options: undefined
520
+ },
521
+ /** . */
522
+ 'source': {
523
+ type: 'text',
524
+ isRequired: true,
525
+ options: undefined
526
+ },
527
+ /** . */
528
+ 'theme': {
529
+ type: 'schema',
530
+ options: {schema: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.ThemeSchema,}
531
+ },
532
+ }
533
+ }
534
+
535
+ type RegisterSkillViewsEmitPayloadEntity = SchemaEntity<SpruceSchemas.Heartwood.v2021_02_11.RegisterSkillViewsEmitPayloadSchema>
536
+
537
+ }
538
+
539
+
456
540
  namespace SpruceSchemas.Heartwood.v2021_02_11 {
457
541
 
458
542
 
@@ -1360,7 +1444,7 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1360
1444
 
1361
1445
  /** Demo phone number. */
1362
1446
  'demoNumber': string
1363
- /** Skill slug. */
1447
+ /** Namespace. */
1364
1448
  'skillSlug': string
1365
1449
  }
1366
1450
 
@@ -1378,9 +1462,9 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1378
1462
  isRequired: true,
1379
1463
  options: undefined
1380
1464
  },
1381
- /** Skill slug. */
1465
+ /** Namespace. */
1382
1466
  'skillSlug': {
1383
- label: 'Skill slug',
1467
+ label: 'Namespace',
1384
1468
  type: 'text',
1385
1469
  isRequired: true,
1386
1470
  options: undefined
@@ -17,9 +17,9 @@ const setupTestsOptionsSchema: SpruceSchemas.SpruceCli.v2020_07_22.SetupTestsOpt
17
17
  isRequired: true,
18
18
  options: undefined
19
19
  },
20
- /** Skill slug. */
20
+ /** Namespace. */
21
21
  'skillSlug': {
22
- label: 'Skill slug',
22
+ label: 'Namespace',
23
23
  type: 'text',
24
24
  isRequired: true,
25
25
  options: undefined
@@ -13,7 +13,7 @@ const optionsSchema = buildSchema({
13
13
  fields: {
14
14
  skillSlug: {
15
15
  type: 'text',
16
- label: 'Skill slug',
16
+ label: 'Namespace',
17
17
  },
18
18
  },
19
19
  })
@@ -16,7 +16,7 @@ const optionsSchema = buildSchema({
16
16
  },
17
17
  nameKebab: {
18
18
  type: 'text',
19
- label: 'Slug',
19
+ label: 'Namespace',
20
20
  isRequired: true,
21
21
  },
22
22
  description: {
@@ -13,7 +13,7 @@ export default buildSchema({
13
13
  },
14
14
  skillSlug: {
15
15
  type: 'text',
16
- label: 'Skill slug',
16
+ label: 'Namespace',
17
17
  isRequired: true,
18
18
  },
19
19
  },