@peernova/cuneiform-sf 1.0.2 → 1.0.4-beta.6
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/LICENSE +81 -30
- package/README.md +59 -95
- package/messages/compatibility.check.md +71 -0
- package/messages/cuneiform.access.md +138 -0
- package/messages/definition.create.md +511 -0
- package/messages/definition.export.md +88 -0
- package/messages/definition.get.md +147 -0
- package/messages/definition.import.md +65 -0
- package/messages/definition.list.md +264 -0
- package/messages/definition.purge.md +318 -0
- package/messages/definition.update.md +80 -0
- package/messages/mcp.serve.md +66 -0
- package/messages/object.describe.md +201 -0
- package/messages/object.list.md +443 -0
- package/messages/org.details.md +386 -0
- package/messages/org.reset.md +71 -0
- package/messages/profile.md +231 -0
- package/messages/profile.request.cancel.md +143 -0
- package/messages/profile.request.delete.md +139 -0
- package/messages/profile.request.list.md +89 -0
- package/messages/summary.purge.md +218 -0
- package/messages/summary.reprofile.md +150 -0
- package/messages/summary.stop.md +157 -0
- package/messages/user.details.md +501 -0
- package/oclif.lock +3021 -2224
- package/oclif.manifest.json +2 -116
- package/package.json +84 -19
- package/lib/commands/cuneiform/about.d.ts +0 -13
- package/lib/commands/cuneiform/about.js +0 -26
- package/lib/commands/cuneiform/about.js.map +0 -1
- package/lib/commands/hello/world.d.ts +0 -14
- package/lib/commands/hello/world.js +0 -27
- package/lib/commands/hello/world.js.map +0 -1
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -2
- package/lib/index.js.map +0 -1
- package/messages/cuneiform.about.md +0 -19
- package/messages/hello.world.md +0 -29
package/oclif.manifest.json
CHANGED
|
@@ -1,118 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
"commands": {
|
|
3
|
-
|
|
4
|
-
"aliases": [],
|
|
5
|
-
"args": {},
|
|
6
|
-
"description": "More information about a command. Don't repeat the summary.",
|
|
7
|
-
"examples": [
|
|
8
|
-
"<%= config.bin %> <%= command.id %>"
|
|
9
|
-
],
|
|
10
|
-
"flags": {
|
|
11
|
-
"json": {
|
|
12
|
-
"description": "Format output as json.",
|
|
13
|
-
"helpGroup": "GLOBAL",
|
|
14
|
-
"name": "json",
|
|
15
|
-
"allowNo": false,
|
|
16
|
-
"type": "boolean"
|
|
17
|
-
},
|
|
18
|
-
"flags-dir": {
|
|
19
|
-
"helpGroup": "GLOBAL",
|
|
20
|
-
"name": "flags-dir",
|
|
21
|
-
"summary": "Import flag values from a directory.",
|
|
22
|
-
"hasDynamicHelp": false,
|
|
23
|
-
"multiple": false,
|
|
24
|
-
"type": "option"
|
|
25
|
-
},
|
|
26
|
-
"name": {
|
|
27
|
-
"char": "n",
|
|
28
|
-
"description": "More information about a flag. Don't repeat the summary.",
|
|
29
|
-
"name": "name",
|
|
30
|
-
"required": false,
|
|
31
|
-
"summary": "Description of a flag.",
|
|
32
|
-
"hasDynamicHelp": false,
|
|
33
|
-
"multiple": false,
|
|
34
|
-
"type": "option"
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
"hasDynamicHelp": false,
|
|
38
|
-
"hiddenAliases": [],
|
|
39
|
-
"id": "cuneiform:about",
|
|
40
|
-
"pluginAlias": "@peernova/cuneiform-sf",
|
|
41
|
-
"pluginName": "@peernova/cuneiform-sf",
|
|
42
|
-
"pluginType": "core",
|
|
43
|
-
"strict": true,
|
|
44
|
-
"summary": "Summary of a command.",
|
|
45
|
-
"enableJsonFlag": true,
|
|
46
|
-
"isESM": true,
|
|
47
|
-
"relativePath": [
|
|
48
|
-
"lib",
|
|
49
|
-
"commands",
|
|
50
|
-
"cuneiform",
|
|
51
|
-
"about.js"
|
|
52
|
-
],
|
|
53
|
-
"aliasPermutations": [],
|
|
54
|
-
"permutations": [
|
|
55
|
-
"cuneiform:about",
|
|
56
|
-
"about:cuneiform"
|
|
57
|
-
]
|
|
58
|
-
},
|
|
59
|
-
"hello:world": {
|
|
60
|
-
"aliases": [],
|
|
61
|
-
"args": {},
|
|
62
|
-
"description": "Say hello either to the world or someone you know.",
|
|
63
|
-
"examples": [
|
|
64
|
-
"Say hello to the world:\n<%= config.bin %> <%= command.id %>",
|
|
65
|
-
"Say hello to someone you know:\n<%= config.bin %> <%= command.id %> --name Astro"
|
|
66
|
-
],
|
|
67
|
-
"flags": {
|
|
68
|
-
"json": {
|
|
69
|
-
"description": "Format output as json.",
|
|
70
|
-
"helpGroup": "GLOBAL",
|
|
71
|
-
"name": "json",
|
|
72
|
-
"allowNo": false,
|
|
73
|
-
"type": "boolean"
|
|
74
|
-
},
|
|
75
|
-
"flags-dir": {
|
|
76
|
-
"helpGroup": "GLOBAL",
|
|
77
|
-
"name": "flags-dir",
|
|
78
|
-
"summary": "Import flag values from a directory.",
|
|
79
|
-
"hasDynamicHelp": false,
|
|
80
|
-
"multiple": false,
|
|
81
|
-
"type": "option"
|
|
82
|
-
},
|
|
83
|
-
"name": {
|
|
84
|
-
"char": "n",
|
|
85
|
-
"description": "This person can be anyone in the world!",
|
|
86
|
-
"name": "name",
|
|
87
|
-
"summary": "The name of the person you'd like to say hello to.",
|
|
88
|
-
"default": "World",
|
|
89
|
-
"hasDynamicHelp": false,
|
|
90
|
-
"multiple": false,
|
|
91
|
-
"type": "option"
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
"hasDynamicHelp": false,
|
|
95
|
-
"hiddenAliases": [],
|
|
96
|
-
"id": "hello:world",
|
|
97
|
-
"pluginAlias": "@peernova/cuneiform-sf",
|
|
98
|
-
"pluginName": "@peernova/cuneiform-sf",
|
|
99
|
-
"pluginType": "core",
|
|
100
|
-
"strict": true,
|
|
101
|
-
"summary": "Say hello.",
|
|
102
|
-
"enableJsonFlag": true,
|
|
103
|
-
"isESM": true,
|
|
104
|
-
"relativePath": [
|
|
105
|
-
"lib",
|
|
106
|
-
"commands",
|
|
107
|
-
"hello",
|
|
108
|
-
"world.js"
|
|
109
|
-
],
|
|
110
|
-
"aliasPermutations": [],
|
|
111
|
-
"permutations": [
|
|
112
|
-
"hello:world",
|
|
113
|
-
"world:hello"
|
|
114
|
-
]
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
"version": "1.0.2"
|
|
2
|
+
"commands": {},
|
|
3
|
+
"version": "1.0.4-beta.6"
|
|
118
4
|
}
|
package/package.json
CHANGED
|
@@ -1,21 +1,33 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@peernova/cuneiform-sf",
|
|
3
3
|
"description": "Cuneiform for Salesforce CLI-Powered Data Profiling",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.4-beta.6",
|
|
5
|
+
"cuneiform": {
|
|
6
|
+
"_comment": "Compatibility manifest. CLI-2932. requiredAppVersion is the minimum Cuneiform For Salesforce managed package version this CLI build expects in the target org. Update at release time alongside the CLI version. See README → Compatibility.",
|
|
7
|
+
"requiredAppVersion": "4.12.0.17"
|
|
8
|
+
},
|
|
5
9
|
"dependencies": {
|
|
10
|
+
"@jetstreamapp/soql-parser-js": "^6.3.1",
|
|
11
|
+
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
6
12
|
"@oclif/core": "^4",
|
|
7
13
|
"@salesforce/core": "^8",
|
|
8
|
-
"@salesforce/sf-plugins-core": "^12"
|
|
14
|
+
"@salesforce/sf-plugins-core": "^12",
|
|
15
|
+
"zod": "^4.3.6"
|
|
9
16
|
},
|
|
10
17
|
"devDependencies": {
|
|
11
18
|
"@oclif/plugin-command-snapshot": "^5.1.9",
|
|
12
|
-
"@types/node": "^22",
|
|
13
19
|
"@salesforce/cli-plugins-testkit": "^5.3.10",
|
|
14
|
-
"@salesforce/dev-scripts": "^
|
|
20
|
+
"@salesforce/dev-scripts": "^11",
|
|
21
|
+
"@types/node": "^22",
|
|
22
|
+
"c8": "^10.1.3",
|
|
15
23
|
"eslint-plugin-sf-plugin": "^1.20.33",
|
|
24
|
+
"eslint-plugin-test-quality": "file:eslint-plugin-test-quality",
|
|
16
25
|
"oclif": "^4.14.0",
|
|
26
|
+
"sfdmu": "^5.6.0",
|
|
17
27
|
"ts-node": "^10.9.2",
|
|
18
|
-
"
|
|
28
|
+
"tsx": "^4.19.3",
|
|
29
|
+
"typescript": "^5.9.3",
|
|
30
|
+
"yarn": "^1.22.22"
|
|
19
31
|
},
|
|
20
32
|
"engines": {
|
|
21
33
|
"node": ">=18.0.0"
|
|
@@ -34,9 +46,9 @@
|
|
|
34
46
|
"data-quality",
|
|
35
47
|
"cuneiform"
|
|
36
48
|
],
|
|
37
|
-
"license": "
|
|
49
|
+
"license": "SEE LICENSE IN LICENSE",
|
|
38
50
|
"peerDependencies": {
|
|
39
|
-
"sfdmu": ">=
|
|
51
|
+
"sfdmu": ">=5.0.0"
|
|
40
52
|
},
|
|
41
53
|
"peerDependenciesMeta": {
|
|
42
54
|
"sfdmu": {
|
|
@@ -50,12 +62,36 @@
|
|
|
50
62
|
"devPlugins": [
|
|
51
63
|
"@oclif/plugin-help"
|
|
52
64
|
],
|
|
65
|
+
"hooks": {
|
|
66
|
+
"prerun": "./lib/hooks/prerun"
|
|
67
|
+
},
|
|
53
68
|
"topics": {
|
|
54
|
-
"hello": {
|
|
55
|
-
"description": "Commands to say hello."
|
|
56
|
-
},
|
|
57
69
|
"cuneiform": {
|
|
58
|
-
"description": "
|
|
70
|
+
"description": "Know what your Salesforce data is actually doing before you deploy Agentforce, Data 360, plan an org migration, or prioritize data quality. Cuneiform for Salesforce profiles objects, fields, and value usage patterns directly from your org — giving you evidence for decisions that previously required weeks of manual analysis or significant data management expertise."
|
|
71
|
+
},
|
|
72
|
+
"cuneiform:compatibility": {
|
|
73
|
+
"description": "Verify the Cuneiform For Salesforce app version this CLI build expects and (optionally) the version installed in a target org. Local-only readout in default mode; queries InstalledSubscriberPackage when --target-org is supplied."
|
|
74
|
+
},
|
|
75
|
+
"cuneiform:definition": {
|
|
76
|
+
"description": "Build and manage the reusable profiling specifications that tell Cuneiform what to analyze — which objects, which fields, and under what conditions. Create, update, and organize definitions in your org; export and import them for team collaboration, backup, and cross-org portability."
|
|
77
|
+
},
|
|
78
|
+
"cuneiform:mcp": {
|
|
79
|
+
"description": "Turn data profiling from a specialist skill into a conversation anyone on your team can have. Cuneiform MCP connects all profiling, analysis, and management capabilities to the AI assistant of your choice via the Model Context Protocol — giving your team evidence-backed answers about data quality without learning command syntax."
|
|
80
|
+
},
|
|
81
|
+
"cuneiform:object": {
|
|
82
|
+
"description": "Understand the data landscape of your org before committing to a profiling scope, migration, or initiative. List objects with record volumes, type distribution, and namespace filtering to see where data lives; describe individual objects to map field structure, record types, and data dependencies before you build."
|
|
83
|
+
},
|
|
84
|
+
"cuneiform:org": {
|
|
85
|
+
"description": "Establish the org context you need before any profiling, migration, or initiative begins. Surfaces Cuneiform installation status and license, org type, active features, detected Salesforce Clouds, installed namespace composition, and API limits — a complete platform baseline from a single command."
|
|
86
|
+
},
|
|
87
|
+
"cuneiform:profile": {
|
|
88
|
+
"description": "Generate the object, field, and value-level evidence that reveals what your Salesforce data is actually doing — including population rates, value distributions, and usage patterns across every profiled object, for the data segments that drive your business outcomes. Execute definitions individually by key or in bulk by type, with parallel processing, namespace filtering, and real-time progress monitoring."
|
|
89
|
+
},
|
|
90
|
+
"cuneiform:summary": {
|
|
91
|
+
"description": "Maintain a clean, current record of profiling results across the engagement lifecycle. Profiling summaries accumulate with each execution — manage them precisely by object, definition, or ID, with dry-run preview before deletion, to keep your active data intelligence current without losing analytical continuity."
|
|
92
|
+
},
|
|
93
|
+
"cuneiform:user": {
|
|
94
|
+
"description": "Verify and activate the prerequisites for CLI-based profiling — so every user can start without guesswork or support tickets. Check surfaces Ready/Not Ready status with specific resolution guidance for anything missing; configure assigns the required permissions and enables profiling access in a single, safe operation."
|
|
59
95
|
}
|
|
60
96
|
},
|
|
61
97
|
"flexibleTaxonomy": true
|
|
@@ -73,12 +109,34 @@
|
|
|
73
109
|
"postpack": "sf-clean --ignore-signing-artifacts",
|
|
74
110
|
"prepack": "sf-prepack",
|
|
75
111
|
"test": "wireit",
|
|
76
|
-
"test:nuts": "
|
|
112
|
+
"test:nuts": "mocha --config .mocharc.nuts.json",
|
|
113
|
+
"test:nuts:fast": "mocha --config .mocharc.nuts-fast.json",
|
|
114
|
+
"test:nuts:commands": "mocha --config .mocharc.nuts-base.json --reporter-option outputFile=nut-commands-results.json \"test/commands/**/*.nut.ts\"",
|
|
115
|
+
"test:nuts:adapters": "mocha --config .mocharc.nuts-base.json --reporter-option outputFile=nut-adapters-results.json \"test/adapters/**/*.nut.ts\"",
|
|
116
|
+
"test:nuts:services": "mocha --config .mocharc.nuts-base.json --reporter-option outputFile=nut-services-results.json \"test/services/**/*.nut.ts\"",
|
|
117
|
+
"test:nuts:group": "mocha --config .mocharc.nuts-base.json --reporter-option outputFile=nut-group-results.json",
|
|
118
|
+
"test:nuts:smoke": "mocha --config .mocharc.nuts-base.json --reporter-option outputFile=nut-smoke-results.json",
|
|
119
|
+
"test:nuts:timed": "mocha --config .mocharc.nuts.json; node scripts/report-nut-timing.cjs test-results/nut-kycd-results.json",
|
|
120
|
+
"test:nuts:timeline": "mocha --config .mocharc.nuts.json; node scripts/generate-nut-timeline.cjs --open",
|
|
121
|
+
"test:nuts:debug-logs": "node scripts/capture-debug-logs.cjs",
|
|
122
|
+
"test:nuts:observe": "mocha --config .mocharc.nuts.json; node scripts/report-nut-timing.cjs test-results/nut-kycd-results.json; node scripts/generate-nut-timeline.cjs; node scripts/capture-debug-logs.cjs",
|
|
123
|
+
"test:nuts:parallel": "node scripts/nut-provision.cjs && mocha --config .mocharc.nuts-parallel.json && mocha --config .mocharc.nuts-serial.json",
|
|
124
|
+
"nuts:provision": "node scripts/nut-provision.cjs",
|
|
125
|
+
"nuts:phase1": "mocha --config .mocharc.nuts-parallel.json",
|
|
126
|
+
"nuts:phase2": "mocha --config .mocharc.nuts-serial.json",
|
|
77
127
|
"test:only": "wireit",
|
|
128
|
+
"test:fresh": "c8 mocha \"test/**/*.test.ts\"",
|
|
129
|
+
"test:quality": "node scripts/generate-test-quality-report.cjs",
|
|
130
|
+
"docs:generate": "node scripts/generate-docs.cjs",
|
|
131
|
+
"docs:freshness": "bash scripts/check-docs-drift.sh",
|
|
132
|
+
"coverage:commands": "node scripts/check-command-coverage.cjs",
|
|
133
|
+
"docs:sync": "node scripts/check-doc-sync.cjs",
|
|
134
|
+
"snapshot": "bash scripts/generate-snapshots.sh",
|
|
78
135
|
"version": "oclif readme"
|
|
79
136
|
},
|
|
80
137
|
"publishConfig": {
|
|
81
|
-
"access": "public"
|
|
138
|
+
"access": "public",
|
|
139
|
+
"registry": "https://registry.npmjs.org"
|
|
82
140
|
},
|
|
83
141
|
"wireit": {
|
|
84
142
|
"build": {
|
|
@@ -112,7 +170,7 @@
|
|
|
112
170
|
"output": []
|
|
113
171
|
},
|
|
114
172
|
"lint": {
|
|
115
|
-
"command": "eslint src test --color --
|
|
173
|
+
"command": "eslint src test --color --max-warnings=0",
|
|
116
174
|
"files": [
|
|
117
175
|
"src/**/*.ts",
|
|
118
176
|
"test/**/*.ts",
|
|
@@ -138,7 +196,7 @@
|
|
|
138
196
|
]
|
|
139
197
|
},
|
|
140
198
|
"test:only": {
|
|
141
|
-
"command": "
|
|
199
|
+
"command": "c8 mocha \"test/**/*.test.ts\"",
|
|
142
200
|
"env": {
|
|
143
201
|
"FORCE_COLOR": "2"
|
|
144
202
|
},
|
|
@@ -148,7 +206,7 @@
|
|
|
148
206
|
"**/tsconfig.json",
|
|
149
207
|
".mocha*",
|
|
150
208
|
"!*.nut.ts",
|
|
151
|
-
".
|
|
209
|
+
".c8rc.json"
|
|
152
210
|
],
|
|
153
211
|
"output": []
|
|
154
212
|
},
|
|
@@ -196,8 +254,15 @@
|
|
|
196
254
|
"author": "Abraham David Lloyd (PeerNova)",
|
|
197
255
|
"repository": {
|
|
198
256
|
"type": "git",
|
|
199
|
-
"url": "https://github.com/PeerNova-Solutions/
|
|
200
|
-
"directory": "@peernova/cuneiform-sf"
|
|
257
|
+
"url": "git+https://github.com/PeerNova-Solutions/salesforce-cli.git"
|
|
201
258
|
},
|
|
202
|
-
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
259
|
+
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
|
|
260
|
+
"resolutions": {
|
|
261
|
+
"form-data": "^4.0.5",
|
|
262
|
+
"qs": "^6.14.1",
|
|
263
|
+
"lodash": "^4.17.23",
|
|
264
|
+
"lodash-es": "^4.17.23",
|
|
265
|
+
"diff": "^4.0.4",
|
|
266
|
+
"tough-cookie": "^4.1.3"
|
|
267
|
+
}
|
|
203
268
|
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
-
export type CuneiformAboutResult = {
|
|
3
|
-
path: string;
|
|
4
|
-
};
|
|
5
|
-
export default class CuneiformAbout extends SfCommand<CuneiformAboutResult> {
|
|
6
|
-
static readonly summary: string;
|
|
7
|
-
static readonly description: string;
|
|
8
|
-
static readonly examples: string[];
|
|
9
|
-
static readonly flags: {
|
|
10
|
-
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
-
};
|
|
12
|
-
run(): Promise<CuneiformAboutResult>;
|
|
13
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
2
|
-
import { Messages } from '@salesforce/core';
|
|
3
|
-
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
4
|
-
const messages = Messages.loadMessages('@peernova/cuneiform-sf', 'cuneiform.about');
|
|
5
|
-
export default class CuneiformAbout extends SfCommand {
|
|
6
|
-
static summary = messages.getMessage('summary');
|
|
7
|
-
static description = messages.getMessage('description');
|
|
8
|
-
static examples = messages.getMessages('examples');
|
|
9
|
-
static flags = {
|
|
10
|
-
name: Flags.string({
|
|
11
|
-
summary: messages.getMessage('flags.name.summary'),
|
|
12
|
-
description: messages.getMessage('flags.name.description'),
|
|
13
|
-
char: 'n',
|
|
14
|
-
required: false,
|
|
15
|
-
}),
|
|
16
|
-
};
|
|
17
|
-
async run() {
|
|
18
|
-
const { flags } = await this.parse(CuneiformAbout);
|
|
19
|
-
const name = flags.name ?? 'world';
|
|
20
|
-
this.log(`hello ${name} from src/commands/cuneiform/about.ts`);
|
|
21
|
-
return {
|
|
22
|
-
path: 'src/commands/cuneiform/about.ts',
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=about.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"about.js","sourceRoot":"","sources":["../../../src/commands/cuneiform/about.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAC;AAMpF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,SAA+B;IAClE,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;YAC1D,IAAI,EAAE,GAAG;YACT,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEnD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,uCAAuC,CAAC,CAAC;QAC/D,OAAO;YACL,IAAI,EAAE,iCAAiC;SACxC,CAAC;IACJ,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
-
export type HelloWorldResult = {
|
|
3
|
-
name: string;
|
|
4
|
-
time: string;
|
|
5
|
-
};
|
|
6
|
-
export default class World extends SfCommand<HelloWorldResult> {
|
|
7
|
-
static readonly summary: string;
|
|
8
|
-
static readonly description: string;
|
|
9
|
-
static readonly examples: string[];
|
|
10
|
-
static readonly flags: {
|
|
11
|
-
name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
};
|
|
13
|
-
run(): Promise<HelloWorldResult>;
|
|
14
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
2
|
-
import { Messages } from '@salesforce/core';
|
|
3
|
-
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
4
|
-
const messages = Messages.loadMessages('@peernova/cuneiform-sf', 'hello.world');
|
|
5
|
-
export default class World extends SfCommand {
|
|
6
|
-
static summary = messages.getMessage('summary');
|
|
7
|
-
static description = messages.getMessage('description');
|
|
8
|
-
static examples = messages.getMessages('examples');
|
|
9
|
-
static flags = {
|
|
10
|
-
name: Flags.string({
|
|
11
|
-
char: 'n',
|
|
12
|
-
summary: messages.getMessage('flags.name.summary'),
|
|
13
|
-
description: messages.getMessage('flags.name.description'),
|
|
14
|
-
default: 'World',
|
|
15
|
-
}),
|
|
16
|
-
};
|
|
17
|
-
async run() {
|
|
18
|
-
const { flags } = await this.parse(World);
|
|
19
|
-
const time = new Date().toDateString();
|
|
20
|
-
this.log(messages.getMessage('info.hello', [flags.name, time]));
|
|
21
|
-
return {
|
|
22
|
-
name: flags.name,
|
|
23
|
-
time,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=world.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"world.js","sourceRoot":"","sources":["../../../src/commands/hello/world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,wBAAwB,EAAE,aAAa,CAAC,CAAC;AAOhF,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,SAA2B;IACrD,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;YAC1D,OAAO,EAAE,OAAO;SACjB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAChE,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI;SACL,CAAC;IACJ,CAAC"}
|
package/lib/index.d.ts
DELETED
package/lib/index.js
DELETED
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe,EAAE,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# summary
|
|
2
|
-
|
|
3
|
-
Summary of a command.
|
|
4
|
-
|
|
5
|
-
# description
|
|
6
|
-
|
|
7
|
-
More information about a command. Don't repeat the summary.
|
|
8
|
-
|
|
9
|
-
# flags.name.summary
|
|
10
|
-
|
|
11
|
-
Description of a flag.
|
|
12
|
-
|
|
13
|
-
# flags.name.description
|
|
14
|
-
|
|
15
|
-
More information about a flag. Don't repeat the summary.
|
|
16
|
-
|
|
17
|
-
# examples
|
|
18
|
-
|
|
19
|
-
- <%= config.bin %> <%= command.id %>
|
package/messages/hello.world.md
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# summary
|
|
2
|
-
|
|
3
|
-
Say hello.
|
|
4
|
-
|
|
5
|
-
# description
|
|
6
|
-
|
|
7
|
-
Say hello either to the world or someone you know.
|
|
8
|
-
|
|
9
|
-
# flags.name.summary
|
|
10
|
-
|
|
11
|
-
The name of the person you'd like to say hello to.
|
|
12
|
-
|
|
13
|
-
# flags.name.description
|
|
14
|
-
|
|
15
|
-
This person can be anyone in the world!
|
|
16
|
-
|
|
17
|
-
# examples
|
|
18
|
-
|
|
19
|
-
- Say hello to the world:
|
|
20
|
-
|
|
21
|
-
<%= config.bin %> <%= command.id %>
|
|
22
|
-
|
|
23
|
-
- Say hello to someone you know:
|
|
24
|
-
|
|
25
|
-
<%= config.bin %> <%= command.id %> --name Astro
|
|
26
|
-
|
|
27
|
-
# info.hello
|
|
28
|
-
|
|
29
|
-
Hello %s at %s.
|