@gurulu/cli 1.4.0 → 1.4.2

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",
@@ -26184,7 +26193,7 @@ function availableFeatures(detected) {
26184
26193
  label: "Activation (popup · tur · A/B test · kişiselleştirme)",
26185
26194
  detail: "Dashboard'dan yayınla, SDK render etsin (Action Layer)",
26186
26195
  enableHint: "import { runActivation } from '@gurulu/web/activate'; runActivation(gurulu);",
26187
- recommended: false
26196
+ recommended: true
26188
26197
  });
26189
26198
  }
26190
26199
  return feats;
@@ -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",
@@ -25761,7 +25770,7 @@ function availableFeatures(detected) {
25761
25770
  label: "Activation (popup · tur · A/B test · kişiselleştirme)",
25762
25771
  detail: "Dashboard'dan yayınla, SDK render etsin (Action Layer)",
25763
25772
  enableHint: "import { runActivation } from '@gurulu/web/activate'; runActivation(gurulu);",
25764
- recommended: false
25773
+ recommended: true
25765
25774
  });
25766
25775
  }
25767
25776
  return feats;
@@ -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,CAwD5E;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.2",
4
4
  "private": false,
5
5
  "license": "BUSL-1.1",
6
6
  "publishConfig": {