@gurulu/cli 1.4.0 → 1.4.1

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/dist/bin.js CHANGED
@@ -26169,6 +26169,15 @@ function availableFeatures(detected) {
26169
26169
  enableHint: isBrowser ? "gurulu.init({ ..., autocapture: { js_error: true } })" : "Sunucu hatalarında: gurulu.track('js_error', { message, error_type })",
26170
26170
  recommended: isBrowser
26171
26171
  });
26172
+ if (isBrowser) {
26173
+ feats.push({
26174
+ key: "heatmap",
26175
+ label: "Heatmap (tıklama + kaydırma)",
26176
+ detail: "Tıklama/kaydırma ısı haritası — default autocapture, ek kod gerekmez",
26177
+ enableHint: "Otomatik: element_clicked + scroll_depth default açık → Heatmaps dashboard kendiliğinden dolar.",
26178
+ recommended: true
26179
+ });
26180
+ }
26172
26181
  if (detected.llmFrameworks.length > 0) {
26173
26182
  feats.push({
26174
26183
  key: "llm",
@@ -26739,6 +26748,10 @@ async function runWizard(opts) {
26739
26748
  });
26740
26749
  const extraTasks = [];
26741
26750
  const llmSelected = featuresResult.selected.some((f3) => f3.key === "llm");
26751
+ const activationSelected = featuresResult.selected.some((f3) => f3.key === "activation");
26752
+ if (activationSelected && !isNode) {
26753
+ extraTasks.push("Enable the Gurulu Activation runtime so dashboard-published popups, tours and personalization " + "render in the browser. Find where the Gurulu browser SDK is initialized (the `gurulu.init({...})` " + "call or the created Gurulu instance) and, right after it, additively add: " + "`import { runActivation } from '@gurulu/web/activate';` then call `runActivation(gurulu);` " + "(use the actual instance variable name from that file). Add the import additively; do not remove " + "or rewrite the existing init.");
26754
+ }
26742
26755
  if (llmSelected && detected.llmFrameworks.length > 0) {
26743
26756
  extraTasks.push(`Wrap the project's LLM client(s) [${detected.llmFrameworks.join(", ")}] with @gurulu/node so ` + "every call is auto-captured. Find where the OpenAI/Anthropic client is instantiated and wrap " + "it in place additively: `import { wrapOpenAI } from '@gurulu/node';` then " + "`const client = wrapOpenAI(new OpenAI({...}))` (use wrapAnthropic for Anthropic SDK). " + "Keep the original instantiation verbatim inside the wrapper.");
26744
26757
  }
package/dist/index.js CHANGED
@@ -25746,6 +25746,15 @@ function availableFeatures(detected) {
25746
25746
  enableHint: isBrowser ? "gurulu.init({ ..., autocapture: { js_error: true } })" : "Sunucu hatalarında: gurulu.track('js_error', { message, error_type })",
25747
25747
  recommended: isBrowser
25748
25748
  });
25749
+ if (isBrowser) {
25750
+ feats.push({
25751
+ key: "heatmap",
25752
+ label: "Heatmap (tıklama + kaydırma)",
25753
+ detail: "Tıklama/kaydırma ısı haritası — default autocapture, ek kod gerekmez",
25754
+ enableHint: "Otomatik: element_clicked + scroll_depth default açık → Heatmaps dashboard kendiliğinden dolar.",
25755
+ recommended: true
25756
+ });
25757
+ }
25749
25758
  if (detected.llmFrameworks.length > 0) {
25750
25759
  feats.push({
25751
25760
  key: "llm",
@@ -26316,6 +26325,10 @@ async function runWizard(opts) {
26316
26325
  });
26317
26326
  const extraTasks = [];
26318
26327
  const llmSelected = featuresResult.selected.some((f3) => f3.key === "llm");
26328
+ const activationSelected = featuresResult.selected.some((f3) => f3.key === "activation");
26329
+ if (activationSelected && !isNode) {
26330
+ extraTasks.push("Enable the Gurulu Activation runtime so dashboard-published popups, tours and personalization " + "render in the browser. Find where the Gurulu browser SDK is initialized (the `gurulu.init({...})` " + "call or the created Gurulu instance) and, right after it, additively add: " + "`import { runActivation } from '@gurulu/web/activate';` then call `runActivation(gurulu);` " + "(use the actual instance variable name from that file). Add the import additively; do not remove " + "or rewrite the existing init.");
26331
+ }
26319
26332
  if (llmSelected && detected.llmFrameworks.length > 0) {
26320
26333
  extraTasks.push(`Wrap the project's LLM client(s) [${detected.llmFrameworks.join(", ")}] with @gurulu/node so ` + "every call is auto-captured. Find where the OpenAI/Anthropic client is instantiated and wrap " + "it in place additively: `import { wrapOpenAI } from '@gurulu/node';` then " + "`const client = wrapOpenAI(new OpenAI({...}))` (use wrapAnthropic for Anthropic SDK). " + "Keep the original instantiation verbatim inside the wrapper.");
26321
26334
  }
@@ -1,6 +1,6 @@
1
1
  import type { ApiClient } from '../lib/api.ts';
2
2
  import { type DetectedProject } from '../lib/detect.ts';
3
- export type FeatureKey = 'error' | 'llm' | 'activation';
3
+ export type FeatureKey = 'error' | 'heatmap' | 'llm' | 'activation';
4
4
  export interface FeatureOption {
5
5
  key: FeatureKey;
6
6
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/wizard/features.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,kBAAkB,CAAC;AAG1E,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,KAAK,GAAG,YAAY,CAAC;AAExD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,2CAA2C;AAC3C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,aAAa,EAAE,CAsC5E;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,eAAe,EACzB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GACvC,OAAO,CAAC,cAAc,CAAC,CAqCzB"}
1
+ {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/wizard/features.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,kBAAkB,CAAC;AAG1E,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,YAAY,CAAC;AAEpE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,2CAA2C;AAC3C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,GAAG,aAAa,EAAE,CAqD5E;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,eAAe,EACzB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GACvC,OAAO,CAAC,cAAc,CAAC,CAqCzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/wizard/run.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAsBD,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAiRlE"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/wizard/run.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAsBD,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA4RlE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gurulu/cli",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "private": false,
5
5
  "license": "BUSL-1.1",
6
6
  "publishConfig": {