@hasna/skills 0.1.13 → 0.1.14
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/bin/index.js +639 -291
- package/bin/mcp.js +301 -180
- package/dist/index.d.ts +4 -2
- package/dist/index.js +190 -2
- package/dist/lib/config.d.ts +27 -0
- package/dist/lib/config.test.d.ts +1 -0
- package/dist/lib/installer.d.ts +25 -0
- package/dist/lib/registry.d.ts +4 -0
- package/dist/types/api.d.ts +74 -0
- package/package.json +5 -2
- package/skills/skill-academic-journal-matcher/bin/cli.ts +34 -0
- package/skills/skill-action-item-router/bin/cli.ts +34 -0
- package/skills/skill-ad-creative-generator/bin/cli.ts +34 -0
- package/skills/skill-advanced-math/bin/cli.ts +34 -0
- package/skills/skill-analyze-data/bin/cli.ts +19 -0
- package/skills/skill-anomaly-investigator/bin/cli.ts +34 -0
- package/skills/skill-api-test-suite/bin/cli.ts +34 -0
- package/skills/skill-apidocs/bin/cli.ts +87 -0
- package/skills/skill-audio-cleanup-lab/bin/cli.ts +6 -0
- package/skills/skill-audiobook-chapter-proofer/bin/cli.ts +34 -0
- package/skills/skill-banner-ad-suite/bin/cli.ts +34 -0
- package/skills/skill-benchmark-finder/bin/cli.ts +34 -0
- package/skills/skill-bio-sequence-tool/bin/cli.ts +34 -0
- package/skills/skill-blog-topic-cluster/bin/cli.ts +34 -0
- package/skills/skill-brand-style-guide/bin/cli.ts +19 -0
- package/skills/skill-brand-voice-audit/bin/cli.ts +34 -0
- package/skills/skill-budget-variance-analyzer/bin/cli.ts +6 -0
- package/skills/skill-businessactivity/bin/cli.ts +28 -0
- package/skills/skill-calendar-events/bin/cli.ts +34 -0
- package/skills/skill-campaign-metric-brief/bin/cli.ts +34 -0
- package/skills/skill-campaign-moodboard/bin/cli.ts +34 -0
- package/skills/skill-caption-style-stylist/bin/cli.ts +34 -0
- package/skills/skill-chemistry-calculator/bin/cli.ts +34 -0
- package/skills/skill-churn-risk-notifier/bin/cli.ts +34 -0
- package/skills/skill-citation-formatter/bin/cli.ts +34 -0
- package/skills/skill-classroom-newsletter-kit/bin/cli.ts +34 -0
- package/skills/skill-color-palette-harmonizer/bin/cli.ts +34 -0
- package/skills/skill-competitor-ad-analyzer/bin/cli.ts +34 -0
- package/skills/skill-compliance-copy-check/bin/cli.ts +34 -0
- package/skills/skill-compliance-report-pack/bin/cli.ts +34 -0
- package/skills/skill-compress-video/bin/cli.ts +19 -0
- package/skills/skill-consolelog/bin/cli.ts +884 -0
- package/skills/skill-contract-plainlanguage/bin/cli.ts +34 -0
- package/skills/skill-copytone-translator/bin/cli.ts +34 -0
- package/skills/skill-create-blog-article/bin/cli.ts +34 -0
- package/skills/skill-create-ebook/bin/cli.ts +34 -0
- package/skills/skill-crm-note-enhancer/bin/cli.ts +34 -0
- package/skills/skill-customer-journey-mapper/bin/cli.ts +34 -0
- package/skills/skill-dashboard-builder/bin/cli.ts +34 -0
- package/skills/skill-dashboard-narrator/bin/cli.ts +34 -0
- package/skills/skill-data-anonymizer/bin/cli.ts +34 -0
- package/skills/skill-database-explorer/bin/cli.ts +34 -0
- package/skills/skill-dataset-health-check/bin/cli.ts +34 -0
- package/skills/skill-decision-journal/bin/cli.ts +34 -0
- package/skills/skill-delegation-brief-writer/bin/cli.ts +34 -0
- package/skills/skill-destination-briefing/bin/cli.ts +34 -0
- package/skills/skill-diff-viewer/bin/cli.ts +34 -0
- package/skills/skill-domainpurchase/SKILL.md +46 -0
- package/skills/skill-domainpurchase/bin/cli.ts +683 -0
- package/skills/skill-domainsearch/SKILL.md +41 -0
- package/skills/skill-domainsearch/bin/cli.ts +410 -0
- package/skills/skill-educational-resource-finder/bin/cli.ts +34 -0
- package/skills/skill-email-campaign/bin/cli.ts +34 -0
- package/skills/skill-exam-readiness-check/bin/cli.ts +34 -0
- package/skills/skill-experiment-power-calculator/bin/cli.ts +34 -0
- package/skills/skill-extract-audio/bin/cli.ts +19 -0
- package/skills/skill-extract-frames/bin/cli.ts +34 -0
- package/skills/skill-extract-invoice/bin/cli.ts +34 -0
- package/skills/skill-family-activity-curator/bin/cli.ts +34 -0
- package/skills/skill-faq-packager/bin/cli.ts +34 -0
- package/skills/skill-feedback-survey-designer/bin/cli.ts +34 -0
- package/skills/skill-field-trip-planner/bin/cli.ts +34 -0
- package/skills/skill-file-organizer/bin/cli.ts +34 -0
- package/skills/skill-folder-tree/bin/cli.ts +34 -0
- package/skills/skill-forecast-scenario-lab/bin/cli.ts +34 -0
- package/skills/skill-form-filler/bin/cli.ts +34 -0
- package/skills/skill-generate-api-client/bin/cli.ts +34 -0
- package/skills/skill-generate-book-cover/bin/cli.ts +34 -0
- package/skills/skill-generate-chart/bin/cli.ts +34 -0
- package/skills/skill-generate-diagram/bin/cli.ts +34 -0
- package/skills/skill-generate-dockerfile/bin/cli.ts +34 -0
- package/skills/skill-generate-documentation/bin/cli.ts +34 -0
- package/skills/skill-generate-docx/bin/cli.ts +6 -0
- package/skills/skill-generate-env/bin/cli.ts +34 -0
- package/skills/skill-generate-excel/bin/cli.ts +34 -0
- package/skills/skill-generate-favicon/bin/cli.ts +34 -0
- package/skills/skill-generate-mock-data/bin/cli.ts +34 -0
- package/skills/skill-generate-pdf/bin/cli.ts +6 -0
- package/skills/skill-generate-pr-description/bin/cli.ts +34 -0
- package/skills/skill-generate-presentation/bin/cli.ts +34 -0
- package/skills/skill-generate-qrcode/bin/cli.ts +34 -0
- package/skills/skill-generate-regex/bin/cli.ts +34 -0
- package/skills/skill-generate-resume/bin/cli.ts +34 -0
- package/skills/skill-generate-sitemap/bin/cli.ts +34 -0
- package/skills/skill-generate-social-posts/bin/cli.ts +34 -0
- package/skills/skill-generate-sql/bin/cli.ts +34 -0
- package/skills/skill-gif-maker/bin/cli.ts +34 -0
- package/skills/skill-github-manager/bin/cli.ts +34 -0
- package/skills/skill-gmail/bin/cli.ts +34 -0
- package/skills/skill-goal-quarterly-roadmap/bin/cli.ts +34 -0
- package/skills/skill-grant-application-drafter/bin/cli.ts +34 -0
- package/skills/skill-grocery-basket-optimizer/bin/cli.ts +34 -0
- package/skills/skill-guest-communication-suite/bin/cli.ts +34 -0
- package/skills/skill-habit-reflection-digest/bin/cli.ts +34 -0
- package/skills/skill-highlight-reel-generator/bin/cli.ts +34 -0
- package/skills/skill-homework-feedback-coach/bin/cli.ts +34 -0
- package/skills/skill-hook/bunfig.toml +5 -0
- package/skills/skill-household-maintenance-mgr/bin/cli.ts +34 -0
- package/skills/skill-http-server/bin/cli.ts +34 -0
- package/skills/skill-implementation/bunfig.toml +5 -0
- package/skills/skill-implementation-agent/bin/cli.ts +34 -0
- package/skills/skill-implementation-plan/bin/cli.ts +34 -0
- package/skills/skill-implementation-todo/bin/cli.ts +34 -0
- package/skills/skill-inbox-priority-planner/bin/cli.ts +34 -0
- package/skills/skill-invoice/bin/cli.ts +20 -0
- package/skills/skill-invoice-dispute-helper/bin/cli.ts +34 -0
- package/skills/skill-itinerary-architect/bin/cli.ts +34 -0
- package/skills/skill-jingle-composer/bin/cli.ts +34 -0
- package/skills/skill-kpi-digest-generator/bin/cli.ts +34 -0
- package/skills/skill-lab-notebook-formatter/bin/cli.ts +34 -0
- package/skills/skill-landing-page-copy/bin/cli.ts +34 -0
- package/skills/skill-latex-table-generator/bin/cli.ts +34 -0
- package/skills/skill-learning-style-profiler/bin/cli.ts +34 -0
- package/skills/skill-lesson-plan-customizer/bin/cli.ts +34 -0
- package/skills/skill-livestream-runofshow/bin/cli.ts +34 -0
- package/skills/skill-longform-structurer/bin/cli.ts +34 -0
- package/skills/skill-lorem-generator/bin/cli.ts +34 -0
- package/skills/skill-managehook/bin/cli.ts +241 -0
- package/skills/skill-managemcp/bin/cli.ts +241 -0
- package/skills/skill-manageskill/bin/cli.ts +241 -0
- package/skills/skill-markdown-validator/bin/cli.ts +34 -0
- package/skills/skill-mcp-builder/bin/cli.ts +34 -0
- package/skills/skill-meal-plan-designer/bin/cli.ts +34 -0
- package/skills/skill-meeting-insight-summarizer/bin/cli.ts +34 -0
- package/skills/skill-merge-pdfs/bin/cli.ts +34 -0
- package/skills/skill-microcopy-generator/bin/cli.ts +34 -0
- package/skills/skill-mindfulness-prompt-cache/bin/cli.ts +34 -0
- package/skills/skill-notion-manager/bin/cli.ts +34 -0
- package/skills/skill-onboarding-sequence-builder/bin/cli.ts +34 -0
- package/skills/skill-onsite-ops-checklist/bin/cli.ts +34 -0
- package/skills/skill-outreach-cadence-designer/bin/cli.ts +34 -0
- package/skills/skill-packaging-concept-studio/bin/cli.ts +34 -0
- package/skills/skill-packing-plan-pro/bin/cli.ts +34 -0
- package/skills/skill-parent-teacher-brief/bin/cli.ts +34 -0
- package/skills/skill-partner-kit-assembler/bin/cli.ts +34 -0
- package/skills/skill-payroll-change-prepper/bin/cli.ts +34 -0
- package/skills/skill-persona-based-adwriter/bin/cli.ts +34 -0
- package/skills/skill-persona-generator/bin/cli.ts +34 -0
- package/skills/skill-personal-daily-ops/bin/cli.ts +34 -0
- package/skills/skill-pet-care-scheduler/bin/cli.ts +34 -0
- package/skills/skill-podcast-show-notes/bin/cli.ts +34 -0
- package/skills/skill-presentation-theme-maker/bin/cli.ts +34 -0
- package/skills/skill-press-release-drafter/bin/cli.ts +34 -0
- package/skills/skill-print-collateral-designer/bin/cli.ts +34 -0
- package/skills/skill-procurement-scorecard/bin/cli.ts +34 -0
- package/skills/skill-product-demo-script/bin/cli.ts +34 -0
- package/skills/skill-product-mockup/bin/cli.ts +34 -0
- package/skills/skill-project-retro-companion/bin/cli.ts +34 -0
- package/skills/skill-proposal-redline-advisor/bin/cli.ts +34 -0
- package/skills/skill-regex-tester/bin/cli.ts +34 -0
- package/skills/skill-remove-background/bin/cli.ts +34 -0
- package/skills/skill-risk-disclosure-kit/bin/cli.ts +34 -0
- package/skills/skill-roi-comparison-tool/bin/cli.ts +34 -0
- package/skills/skill-sales-call-recapper/bin/cli.ts +34 -0
- package/skills/skill-salescopy/bin/cli.ts +20 -0
- package/skills/skill-scaffold-project/bin/cli.ts +34 -0
- package/skills/skill-scholarship-tracker/bin/cli.ts +34 -0
- package/skills/skill-scientific-figure-check/bin/cli.ts +34 -0
- package/skills/skill-seating-chart-maker/bin/cli.ts +34 -0
- package/skills/skill-security-audit/bin/cli.ts +34 -0
- package/skills/skill-seo-brief-builder/bin/cli.ts +34 -0
- package/skills/skill-slack-assistant/bin/cli.ts +34 -0
- package/skills/skill-sleep-routine-analyzer/bin/cli.ts +34 -0
- package/skills/skill-social-media-kit/bin/cli.ts +34 -0
- package/skills/skill-split-pdf/bin/cli.ts +34 -0
- package/skills/skill-sponsorship-proposal-lab/bin/cli.ts +34 -0
- package/skills/skill-spreadsheet-cleanroom/bin/cli.ts +34 -0
- package/skills/skill-statistical-test-selector/bin/cli.ts +34 -0
- package/skills/skill-stress-relief-playbook/bin/cli.ts +34 -0
- package/skills/skill-study-guide-builder/bin/cli.ts +34 -0
- package/skills/skill-subscription-spend-watcher/bin/cli.ts +34 -0
- package/skills/skill-subtitle/bin/cli.ts +20 -0
- package/skills/skill-survey-insight-extractor/bin/cli.ts +34 -0
- package/skills/skill-terraform-generator/bin/cli.ts +34 -0
- package/skills/skill-testimonial-graphics/bin/cli.ts +34 -0
- package/skills/skill-timesheet/bin/cli.ts +47 -0
- package/skills/skill-travel-budget-balancer/bin/cli.ts +34 -0
- package/skills/skill-validate-config/bin/cli.ts +34 -0
- package/skills/skill-video-cut-suggester/bin/cli.ts +34 -0
- package/skills/skill-video-downloader/bin/cli.ts +34 -0
- package/skills/skill-video-thumbnail/bin/cli.ts +34 -0
- package/skills/skill-voiceover-casting-assistant/bin/cli.ts +34 -0
- package/skills/skill-watermark/bin/cli.ts +34 -0
- package/skills/skill-webcrawling/bin/cli.ts +21 -0
- package/skills/skill-webinar-script-coach/bin/cli.ts +34 -0
- package/skills/skill-wellness-progress-reporter/bin/cli.ts +34 -0
- package/skills/skill-workout-cycle-planner/bin/cli.ts +34 -0
package/bin/mcp.js
CHANGED
|
@@ -5,25 +5,43 @@ var __getProtoOf = Object.getPrototypeOf;
|
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
function __accessProp(key) {
|
|
9
|
+
return this[key];
|
|
10
|
+
}
|
|
11
|
+
var __toESMCache_node;
|
|
12
|
+
var __toESMCache_esm;
|
|
8
13
|
var __toESM = (mod, isNodeMode, target) => {
|
|
14
|
+
var canCache = mod != null && typeof mod === "object";
|
|
15
|
+
if (canCache) {
|
|
16
|
+
var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
|
|
17
|
+
var cached = cache.get(mod);
|
|
18
|
+
if (cached)
|
|
19
|
+
return cached;
|
|
20
|
+
}
|
|
9
21
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
10
22
|
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
11
23
|
for (let key of __getOwnPropNames(mod))
|
|
12
24
|
if (!__hasOwnProp.call(to, key))
|
|
13
25
|
__defProp(to, key, {
|
|
14
|
-
get: (
|
|
26
|
+
get: __accessProp.bind(mod, key),
|
|
15
27
|
enumerable: true
|
|
16
28
|
});
|
|
29
|
+
if (canCache)
|
|
30
|
+
cache.set(mod, to);
|
|
17
31
|
return to;
|
|
18
32
|
};
|
|
19
33
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
34
|
+
var __returnValue = (v) => v;
|
|
35
|
+
function __exportSetter(name, newValue) {
|
|
36
|
+
this[name] = __returnValue.bind(null, newValue);
|
|
37
|
+
}
|
|
20
38
|
var __export = (target, all) => {
|
|
21
39
|
for (var name in all)
|
|
22
40
|
__defProp(target, name, {
|
|
23
41
|
get: all[name],
|
|
24
42
|
enumerable: true,
|
|
25
43
|
configurable: true,
|
|
26
|
-
set: (
|
|
44
|
+
set: __exportSetter.bind(all, name)
|
|
27
45
|
});
|
|
28
46
|
};
|
|
29
47
|
|
|
@@ -6277,7 +6295,7 @@ var require_formats = __commonJS((exports) => {
|
|
|
6277
6295
|
}
|
|
6278
6296
|
var TIME = /^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;
|
|
6279
6297
|
function getTime(strictTimeZone) {
|
|
6280
|
-
return function
|
|
6298
|
+
return function time3(str) {
|
|
6281
6299
|
const matches = TIME.exec(str);
|
|
6282
6300
|
if (!matches)
|
|
6283
6301
|
return false;
|
|
@@ -6490,7 +6508,7 @@ var require_dist = __commonJS((exports, module) => {
|
|
|
6490
6508
|
exports.default = formatsPlugin;
|
|
6491
6509
|
});
|
|
6492
6510
|
|
|
6493
|
-
// node_modules/zod/v3/helpers/util.js
|
|
6511
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/util.js
|
|
6494
6512
|
var util;
|
|
6495
6513
|
(function(util2) {
|
|
6496
6514
|
util2.assertEqual = (_) => {};
|
|
@@ -6621,7 +6639,7 @@ var getParsedType = (data) => {
|
|
|
6621
6639
|
}
|
|
6622
6640
|
};
|
|
6623
6641
|
|
|
6624
|
-
// node_modules/zod/v3/ZodError.js
|
|
6642
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/ZodError.js
|
|
6625
6643
|
var ZodIssueCode = util.arrayToEnum([
|
|
6626
6644
|
"invalid_type",
|
|
6627
6645
|
"invalid_literal",
|
|
@@ -6735,7 +6753,7 @@ ZodError.create = (issues) => {
|
|
|
6735
6753
|
return error;
|
|
6736
6754
|
};
|
|
6737
6755
|
|
|
6738
|
-
// node_modules/zod/v3/locales/en.js
|
|
6756
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/locales/en.js
|
|
6739
6757
|
var errorMap = (issue, _ctx) => {
|
|
6740
6758
|
let message;
|
|
6741
6759
|
switch (issue.code) {
|
|
@@ -6838,13 +6856,13 @@ var errorMap = (issue, _ctx) => {
|
|
|
6838
6856
|
};
|
|
6839
6857
|
var en_default = errorMap;
|
|
6840
6858
|
|
|
6841
|
-
// node_modules/zod/v3/errors.js
|
|
6859
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/errors.js
|
|
6842
6860
|
var overrideErrorMap = en_default;
|
|
6843
6861
|
function getErrorMap() {
|
|
6844
6862
|
return overrideErrorMap;
|
|
6845
6863
|
}
|
|
6846
6864
|
|
|
6847
|
-
// node_modules/zod/v3/helpers/parseUtil.js
|
|
6865
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/parseUtil.js
|
|
6848
6866
|
var makeIssue = (params) => {
|
|
6849
6867
|
const { data, path, errorMaps, issueData } = params;
|
|
6850
6868
|
const fullPath = [...path, ...issueData.path || []];
|
|
@@ -6950,14 +6968,14 @@ var isDirty = (x) => x.status === "dirty";
|
|
|
6950
6968
|
var isValid = (x) => x.status === "valid";
|
|
6951
6969
|
var isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
|
|
6952
6970
|
|
|
6953
|
-
// node_modules/zod/v3/helpers/errorUtil.js
|
|
6971
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/helpers/errorUtil.js
|
|
6954
6972
|
var errorUtil;
|
|
6955
6973
|
(function(errorUtil2) {
|
|
6956
6974
|
errorUtil2.errToObj = (message) => typeof message === "string" ? { message } : message || {};
|
|
6957
6975
|
errorUtil2.toString = (message) => typeof message === "string" ? message : message?.message;
|
|
6958
6976
|
})(errorUtil || (errorUtil = {}));
|
|
6959
6977
|
|
|
6960
|
-
// node_modules/zod/v3/types.js
|
|
6978
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v3/types.js
|
|
6961
6979
|
class ParseInputLazyPath {
|
|
6962
6980
|
constructor(parent, value, path, key) {
|
|
6963
6981
|
this._cachedPath = [];
|
|
@@ -10301,7 +10319,7 @@ var nullableType = ZodNullable.create;
|
|
|
10301
10319
|
var preprocessType = ZodEffects.createWithPreprocess;
|
|
10302
10320
|
var pipelineType = ZodPipeline.create;
|
|
10303
10321
|
|
|
10304
|
-
// node_modules/zod/v4/core/index.js
|
|
10322
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/index.js
|
|
10305
10323
|
var exports_core2 = {};
|
|
10306
10324
|
__export(exports_core2, {
|
|
10307
10325
|
version: () => version,
|
|
@@ -10579,7 +10597,7 @@ __export(exports_core2, {
|
|
|
10579
10597
|
$ZodAny: () => $ZodAny
|
|
10580
10598
|
});
|
|
10581
10599
|
|
|
10582
|
-
// node_modules/zod/v4/core/core.js
|
|
10600
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/core.js
|
|
10583
10601
|
var NEVER = Object.freeze({
|
|
10584
10602
|
status: "aborted"
|
|
10585
10603
|
});
|
|
@@ -10655,7 +10673,7 @@ function config(newConfig) {
|
|
|
10655
10673
|
Object.assign(globalConfig, newConfig);
|
|
10656
10674
|
return globalConfig;
|
|
10657
10675
|
}
|
|
10658
|
-
// node_modules/zod/v4/core/util.js
|
|
10676
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/util.js
|
|
10659
10677
|
var exports_util = {};
|
|
10660
10678
|
__export(exports_util, {
|
|
10661
10679
|
unwrapMessage: () => unwrapMessage,
|
|
@@ -11329,7 +11347,7 @@ class Class {
|
|
|
11329
11347
|
constructor(..._args) {}
|
|
11330
11348
|
}
|
|
11331
11349
|
|
|
11332
|
-
// node_modules/zod/v4/core/errors.js
|
|
11350
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/errors.js
|
|
11333
11351
|
var initializer = (inst, def) => {
|
|
11334
11352
|
inst.name = "$ZodError";
|
|
11335
11353
|
Object.defineProperty(inst, "_zod", {
|
|
@@ -11466,7 +11484,7 @@ function prettifyError(error) {
|
|
|
11466
11484
|
`);
|
|
11467
11485
|
}
|
|
11468
11486
|
|
|
11469
|
-
// node_modules/zod/v4/core/parse.js
|
|
11487
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/parse.js
|
|
11470
11488
|
var _parse = (_Err) => (schema, value, _ctx, _params) => {
|
|
11471
11489
|
const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
|
|
11472
11490
|
const result = schema._zod.run({ value, issues: [] }, ctx);
|
|
@@ -11553,7 +11571,7 @@ var _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
|
|
|
11553
11571
|
return _safeParseAsync(_Err)(schema, value, _ctx);
|
|
11554
11572
|
};
|
|
11555
11573
|
var safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync($ZodRealError);
|
|
11556
|
-
// node_modules/zod/v4/core/regexes.js
|
|
11574
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/regexes.js
|
|
11557
11575
|
var exports_regexes = {};
|
|
11558
11576
|
__export(exports_regexes, {
|
|
11559
11577
|
xid: () => xid,
|
|
@@ -11710,7 +11728,7 @@ var sha512_hex = /^[0-9a-fA-F]{128}$/;
|
|
|
11710
11728
|
var sha512_base64 = /* @__PURE__ */ fixedBase64(86, "==");
|
|
11711
11729
|
var sha512_base64url = /* @__PURE__ */ fixedBase64url(86);
|
|
11712
11730
|
|
|
11713
|
-
// node_modules/zod/v4/core/checks.js
|
|
11731
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/checks.js
|
|
11714
11732
|
var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
|
|
11715
11733
|
var _a;
|
|
11716
11734
|
inst._zod ?? (inst._zod = {});
|
|
@@ -12257,7 +12275,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
|
|
|
12257
12275
|
};
|
|
12258
12276
|
});
|
|
12259
12277
|
|
|
12260
|
-
// node_modules/zod/v4/core/doc.js
|
|
12278
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/doc.js
|
|
12261
12279
|
class Doc {
|
|
12262
12280
|
constructor(args = []) {
|
|
12263
12281
|
this.content = [];
|
|
@@ -12295,14 +12313,14 @@ class Doc {
|
|
|
12295
12313
|
}
|
|
12296
12314
|
}
|
|
12297
12315
|
|
|
12298
|
-
// node_modules/zod/v4/core/versions.js
|
|
12316
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/versions.js
|
|
12299
12317
|
var version = {
|
|
12300
12318
|
major: 4,
|
|
12301
12319
|
minor: 3,
|
|
12302
12320
|
patch: 6
|
|
12303
12321
|
};
|
|
12304
12322
|
|
|
12305
|
-
// node_modules/zod/v4/core/schemas.js
|
|
12323
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/schemas.js
|
|
12306
12324
|
var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
|
|
12307
12325
|
var _a;
|
|
12308
12326
|
inst ?? (inst = {});
|
|
@@ -14264,7 +14282,7 @@ function handleRefineResult(result, payload, input, inst) {
|
|
|
14264
14282
|
payload.issues.push(issue(_iss));
|
|
14265
14283
|
}
|
|
14266
14284
|
}
|
|
14267
|
-
// node_modules/zod/v4/locales/index.js
|
|
14285
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/index.js
|
|
14268
14286
|
var exports_locales = {};
|
|
14269
14287
|
__export(exports_locales, {
|
|
14270
14288
|
zhTW: () => zh_TW_default,
|
|
@@ -14318,7 +14336,7 @@ __export(exports_locales, {
|
|
|
14318
14336
|
ar: () => ar_default
|
|
14319
14337
|
});
|
|
14320
14338
|
|
|
14321
|
-
// node_modules/zod/v4/locales/ar.js
|
|
14339
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ar.js
|
|
14322
14340
|
var error = () => {
|
|
14323
14341
|
const Sizable = {
|
|
14324
14342
|
string: { unit: "\u062D\u0631\u0641", verb: "\u0623\u0646 \u064A\u062D\u0648\u064A" },
|
|
@@ -14424,7 +14442,7 @@ function ar_default() {
|
|
|
14424
14442
|
localeError: error()
|
|
14425
14443
|
};
|
|
14426
14444
|
}
|
|
14427
|
-
// node_modules/zod/v4/locales/az.js
|
|
14445
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/az.js
|
|
14428
14446
|
var error2 = () => {
|
|
14429
14447
|
const Sizable = {
|
|
14430
14448
|
string: { unit: "simvol", verb: "olmal\u0131d\u0131r" },
|
|
@@ -14529,7 +14547,7 @@ function az_default() {
|
|
|
14529
14547
|
localeError: error2()
|
|
14530
14548
|
};
|
|
14531
14549
|
}
|
|
14532
|
-
// node_modules/zod/v4/locales/be.js
|
|
14550
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/be.js
|
|
14533
14551
|
function getBelarusianPlural(count, one, few, many) {
|
|
14534
14552
|
const absCount = Math.abs(count);
|
|
14535
14553
|
const lastDigit = absCount % 10;
|
|
@@ -14685,7 +14703,7 @@ function be_default() {
|
|
|
14685
14703
|
localeError: error3()
|
|
14686
14704
|
};
|
|
14687
14705
|
}
|
|
14688
|
-
// node_modules/zod/v4/locales/bg.js
|
|
14706
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/bg.js
|
|
14689
14707
|
var error4 = () => {
|
|
14690
14708
|
const Sizable = {
|
|
14691
14709
|
string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0430", verb: "\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430" },
|
|
@@ -14805,7 +14823,7 @@ function bg_default() {
|
|
|
14805
14823
|
localeError: error4()
|
|
14806
14824
|
};
|
|
14807
14825
|
}
|
|
14808
|
-
// node_modules/zod/v4/locales/ca.js
|
|
14826
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ca.js
|
|
14809
14827
|
var error5 = () => {
|
|
14810
14828
|
const Sizable = {
|
|
14811
14829
|
string: { unit: "car\xE0cters", verb: "contenir" },
|
|
@@ -14912,7 +14930,7 @@ function ca_default() {
|
|
|
14912
14930
|
localeError: error5()
|
|
14913
14931
|
};
|
|
14914
14932
|
}
|
|
14915
|
-
// node_modules/zod/v4/locales/cs.js
|
|
14933
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/cs.js
|
|
14916
14934
|
var error6 = () => {
|
|
14917
14935
|
const Sizable = {
|
|
14918
14936
|
string: { unit: "znak\u016F", verb: "m\xEDt" },
|
|
@@ -15023,7 +15041,7 @@ function cs_default() {
|
|
|
15023
15041
|
localeError: error6()
|
|
15024
15042
|
};
|
|
15025
15043
|
}
|
|
15026
|
-
// node_modules/zod/v4/locales/da.js
|
|
15044
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/da.js
|
|
15027
15045
|
var error7 = () => {
|
|
15028
15046
|
const Sizable = {
|
|
15029
15047
|
string: { unit: "tegn", verb: "havde" },
|
|
@@ -15138,7 +15156,7 @@ function da_default() {
|
|
|
15138
15156
|
localeError: error7()
|
|
15139
15157
|
};
|
|
15140
15158
|
}
|
|
15141
|
-
// node_modules/zod/v4/locales/de.js
|
|
15159
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/de.js
|
|
15142
15160
|
var error8 = () => {
|
|
15143
15161
|
const Sizable = {
|
|
15144
15162
|
string: { unit: "Zeichen", verb: "zu haben" },
|
|
@@ -15246,7 +15264,7 @@ function de_default() {
|
|
|
15246
15264
|
localeError: error8()
|
|
15247
15265
|
};
|
|
15248
15266
|
}
|
|
15249
|
-
// node_modules/zod/v4/locales/en.js
|
|
15267
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/en.js
|
|
15250
15268
|
var error9 = () => {
|
|
15251
15269
|
const Sizable = {
|
|
15252
15270
|
string: { unit: "characters", verb: "to have" },
|
|
@@ -15352,7 +15370,7 @@ function en_default2() {
|
|
|
15352
15370
|
localeError: error9()
|
|
15353
15371
|
};
|
|
15354
15372
|
}
|
|
15355
|
-
// node_modules/zod/v4/locales/eo.js
|
|
15373
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/eo.js
|
|
15356
15374
|
var error10 = () => {
|
|
15357
15375
|
const Sizable = {
|
|
15358
15376
|
string: { unit: "karaktrojn", verb: "havi" },
|
|
@@ -15461,7 +15479,7 @@ function eo_default() {
|
|
|
15461
15479
|
localeError: error10()
|
|
15462
15480
|
};
|
|
15463
15481
|
}
|
|
15464
|
-
// node_modules/zod/v4/locales/es.js
|
|
15482
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/es.js
|
|
15465
15483
|
var error11 = () => {
|
|
15466
15484
|
const Sizable = {
|
|
15467
15485
|
string: { unit: "caracteres", verb: "tener" },
|
|
@@ -15593,7 +15611,7 @@ function es_default() {
|
|
|
15593
15611
|
localeError: error11()
|
|
15594
15612
|
};
|
|
15595
15613
|
}
|
|
15596
|
-
// node_modules/zod/v4/locales/fa.js
|
|
15614
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/fa.js
|
|
15597
15615
|
var error12 = () => {
|
|
15598
15616
|
const Sizable = {
|
|
15599
15617
|
string: { unit: "\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
|
|
@@ -15707,7 +15725,7 @@ function fa_default() {
|
|
|
15707
15725
|
localeError: error12()
|
|
15708
15726
|
};
|
|
15709
15727
|
}
|
|
15710
|
-
// node_modules/zod/v4/locales/fi.js
|
|
15728
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/fi.js
|
|
15711
15729
|
var error13 = () => {
|
|
15712
15730
|
const Sizable = {
|
|
15713
15731
|
string: { unit: "merkki\xE4", subject: "merkkijonon" },
|
|
@@ -15819,7 +15837,7 @@ function fi_default() {
|
|
|
15819
15837
|
localeError: error13()
|
|
15820
15838
|
};
|
|
15821
15839
|
}
|
|
15822
|
-
// node_modules/zod/v4/locales/fr.js
|
|
15840
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/fr.js
|
|
15823
15841
|
var error14 = () => {
|
|
15824
15842
|
const Sizable = {
|
|
15825
15843
|
string: { unit: "caract\xE8res", verb: "avoir" },
|
|
@@ -15927,7 +15945,7 @@ function fr_default() {
|
|
|
15927
15945
|
localeError: error14()
|
|
15928
15946
|
};
|
|
15929
15947
|
}
|
|
15930
|
-
// node_modules/zod/v4/locales/fr-CA.js
|
|
15948
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/fr-CA.js
|
|
15931
15949
|
var error15 = () => {
|
|
15932
15950
|
const Sizable = {
|
|
15933
15951
|
string: { unit: "caract\xE8res", verb: "avoir" },
|
|
@@ -16034,7 +16052,7 @@ function fr_CA_default() {
|
|
|
16034
16052
|
localeError: error15()
|
|
16035
16053
|
};
|
|
16036
16054
|
}
|
|
16037
|
-
// node_modules/zod/v4/locales/he.js
|
|
16055
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/he.js
|
|
16038
16056
|
var error16 = () => {
|
|
16039
16057
|
const TypeNames = {
|
|
16040
16058
|
string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA", gender: "f" },
|
|
@@ -16227,7 +16245,7 @@ function he_default() {
|
|
|
16227
16245
|
localeError: error16()
|
|
16228
16246
|
};
|
|
16229
16247
|
}
|
|
16230
|
-
// node_modules/zod/v4/locales/hu.js
|
|
16248
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/hu.js
|
|
16231
16249
|
var error17 = () => {
|
|
16232
16250
|
const Sizable = {
|
|
16233
16251
|
string: { unit: "karakter", verb: "legyen" },
|
|
@@ -16335,7 +16353,7 @@ function hu_default() {
|
|
|
16335
16353
|
localeError: error17()
|
|
16336
16354
|
};
|
|
16337
16355
|
}
|
|
16338
|
-
// node_modules/zod/v4/locales/hy.js
|
|
16356
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/hy.js
|
|
16339
16357
|
function getArmenianPlural(count, one, many) {
|
|
16340
16358
|
return Math.abs(count) === 1 ? one : many;
|
|
16341
16359
|
}
|
|
@@ -16482,7 +16500,7 @@ function hy_default() {
|
|
|
16482
16500
|
localeError: error18()
|
|
16483
16501
|
};
|
|
16484
16502
|
}
|
|
16485
|
-
// node_modules/zod/v4/locales/id.js
|
|
16503
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/id.js
|
|
16486
16504
|
var error19 = () => {
|
|
16487
16505
|
const Sizable = {
|
|
16488
16506
|
string: { unit: "karakter", verb: "memiliki" },
|
|
@@ -16588,7 +16606,7 @@ function id_default() {
|
|
|
16588
16606
|
localeError: error19()
|
|
16589
16607
|
};
|
|
16590
16608
|
}
|
|
16591
|
-
// node_modules/zod/v4/locales/is.js
|
|
16609
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/is.js
|
|
16592
16610
|
var error20 = () => {
|
|
16593
16611
|
const Sizable = {
|
|
16594
16612
|
string: { unit: "stafi", verb: "a\xF0 hafa" },
|
|
@@ -16697,7 +16715,7 @@ function is_default() {
|
|
|
16697
16715
|
localeError: error20()
|
|
16698
16716
|
};
|
|
16699
16717
|
}
|
|
16700
|
-
// node_modules/zod/v4/locales/it.js
|
|
16718
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/it.js
|
|
16701
16719
|
var error21 = () => {
|
|
16702
16720
|
const Sizable = {
|
|
16703
16721
|
string: { unit: "caratteri", verb: "avere" },
|
|
@@ -16805,7 +16823,7 @@ function it_default() {
|
|
|
16805
16823
|
localeError: error21()
|
|
16806
16824
|
};
|
|
16807
16825
|
}
|
|
16808
|
-
// node_modules/zod/v4/locales/ja.js
|
|
16826
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ja.js
|
|
16809
16827
|
var error22 = () => {
|
|
16810
16828
|
const Sizable = {
|
|
16811
16829
|
string: { unit: "\u6587\u5B57", verb: "\u3067\u3042\u308B" },
|
|
@@ -16912,7 +16930,7 @@ function ja_default() {
|
|
|
16912
16930
|
localeError: error22()
|
|
16913
16931
|
};
|
|
16914
16932
|
}
|
|
16915
|
-
// node_modules/zod/v4/locales/ka.js
|
|
16933
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ka.js
|
|
16916
16934
|
var error23 = () => {
|
|
16917
16935
|
const Sizable = {
|
|
16918
16936
|
string: { unit: "\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD", verb: "\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1" },
|
|
@@ -17024,7 +17042,7 @@ function ka_default() {
|
|
|
17024
17042
|
localeError: error23()
|
|
17025
17043
|
};
|
|
17026
17044
|
}
|
|
17027
|
-
// node_modules/zod/v4/locales/km.js
|
|
17045
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/km.js
|
|
17028
17046
|
var error24 = () => {
|
|
17029
17047
|
const Sizable = {
|
|
17030
17048
|
string: { unit: "\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
|
|
@@ -17135,11 +17153,11 @@ function km_default() {
|
|
|
17135
17153
|
};
|
|
17136
17154
|
}
|
|
17137
17155
|
|
|
17138
|
-
// node_modules/zod/v4/locales/kh.js
|
|
17156
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/kh.js
|
|
17139
17157
|
function kh_default() {
|
|
17140
17158
|
return km_default();
|
|
17141
17159
|
}
|
|
17142
|
-
// node_modules/zod/v4/locales/ko.js
|
|
17160
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ko.js
|
|
17143
17161
|
var error25 = () => {
|
|
17144
17162
|
const Sizable = {
|
|
17145
17163
|
string: { unit: "\uBB38\uC790", verb: "to have" },
|
|
@@ -17250,7 +17268,7 @@ function ko_default() {
|
|
|
17250
17268
|
localeError: error25()
|
|
17251
17269
|
};
|
|
17252
17270
|
}
|
|
17253
|
-
// node_modules/zod/v4/locales/lt.js
|
|
17271
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/lt.js
|
|
17254
17272
|
var capitalizeFirstCharacter = (text) => {
|
|
17255
17273
|
return text.charAt(0).toUpperCase() + text.slice(1);
|
|
17256
17274
|
};
|
|
@@ -17453,7 +17471,7 @@ function lt_default() {
|
|
|
17453
17471
|
localeError: error26()
|
|
17454
17472
|
};
|
|
17455
17473
|
}
|
|
17456
|
-
// node_modules/zod/v4/locales/mk.js
|
|
17474
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/mk.js
|
|
17457
17475
|
var error27 = () => {
|
|
17458
17476
|
const Sizable = {
|
|
17459
17477
|
string: { unit: "\u0437\u043D\u0430\u0446\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
|
|
@@ -17562,7 +17580,7 @@ function mk_default() {
|
|
|
17562
17580
|
localeError: error27()
|
|
17563
17581
|
};
|
|
17564
17582
|
}
|
|
17565
|
-
// node_modules/zod/v4/locales/ms.js
|
|
17583
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ms.js
|
|
17566
17584
|
var error28 = () => {
|
|
17567
17585
|
const Sizable = {
|
|
17568
17586
|
string: { unit: "aksara", verb: "mempunyai" },
|
|
@@ -17669,7 +17687,7 @@ function ms_default() {
|
|
|
17669
17687
|
localeError: error28()
|
|
17670
17688
|
};
|
|
17671
17689
|
}
|
|
17672
|
-
// node_modules/zod/v4/locales/nl.js
|
|
17690
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/nl.js
|
|
17673
17691
|
var error29 = () => {
|
|
17674
17692
|
const Sizable = {
|
|
17675
17693
|
string: { unit: "tekens", verb: "heeft" },
|
|
@@ -17779,7 +17797,7 @@ function nl_default() {
|
|
|
17779
17797
|
localeError: error29()
|
|
17780
17798
|
};
|
|
17781
17799
|
}
|
|
17782
|
-
// node_modules/zod/v4/locales/no.js
|
|
17800
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/no.js
|
|
17783
17801
|
var error30 = () => {
|
|
17784
17802
|
const Sizable = {
|
|
17785
17803
|
string: { unit: "tegn", verb: "\xE5 ha" },
|
|
@@ -17887,7 +17905,7 @@ function no_default() {
|
|
|
17887
17905
|
localeError: error30()
|
|
17888
17906
|
};
|
|
17889
17907
|
}
|
|
17890
|
-
// node_modules/zod/v4/locales/ota.js
|
|
17908
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ota.js
|
|
17891
17909
|
var error31 = () => {
|
|
17892
17910
|
const Sizable = {
|
|
17893
17911
|
string: { unit: "harf", verb: "olmal\u0131d\u0131r" },
|
|
@@ -17996,7 +18014,7 @@ function ota_default() {
|
|
|
17996
18014
|
localeError: error31()
|
|
17997
18015
|
};
|
|
17998
18016
|
}
|
|
17999
|
-
// node_modules/zod/v4/locales/ps.js
|
|
18017
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ps.js
|
|
18000
18018
|
var error32 = () => {
|
|
18001
18019
|
const Sizable = {
|
|
18002
18020
|
string: { unit: "\u062A\u0648\u06A9\u064A", verb: "\u0648\u0644\u0631\u064A" },
|
|
@@ -18110,7 +18128,7 @@ function ps_default() {
|
|
|
18110
18128
|
localeError: error32()
|
|
18111
18129
|
};
|
|
18112
18130
|
}
|
|
18113
|
-
// node_modules/zod/v4/locales/pl.js
|
|
18131
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/pl.js
|
|
18114
18132
|
var error33 = () => {
|
|
18115
18133
|
const Sizable = {
|
|
18116
18134
|
string: { unit: "znak\xF3w", verb: "mie\u0107" },
|
|
@@ -18219,7 +18237,7 @@ function pl_default() {
|
|
|
18219
18237
|
localeError: error33()
|
|
18220
18238
|
};
|
|
18221
18239
|
}
|
|
18222
|
-
// node_modules/zod/v4/locales/pt.js
|
|
18240
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/pt.js
|
|
18223
18241
|
var error34 = () => {
|
|
18224
18242
|
const Sizable = {
|
|
18225
18243
|
string: { unit: "caracteres", verb: "ter" },
|
|
@@ -18327,7 +18345,7 @@ function pt_default() {
|
|
|
18327
18345
|
localeError: error34()
|
|
18328
18346
|
};
|
|
18329
18347
|
}
|
|
18330
|
-
// node_modules/zod/v4/locales/ru.js
|
|
18348
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ru.js
|
|
18331
18349
|
function getRussianPlural(count, one, few, many) {
|
|
18332
18350
|
const absCount = Math.abs(count);
|
|
18333
18351
|
const lastDigit = absCount % 10;
|
|
@@ -18483,7 +18501,7 @@ function ru_default() {
|
|
|
18483
18501
|
localeError: error35()
|
|
18484
18502
|
};
|
|
18485
18503
|
}
|
|
18486
|
-
// node_modules/zod/v4/locales/sl.js
|
|
18504
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/sl.js
|
|
18487
18505
|
var error36 = () => {
|
|
18488
18506
|
const Sizable = {
|
|
18489
18507
|
string: { unit: "znakov", verb: "imeti" },
|
|
@@ -18592,7 +18610,7 @@ function sl_default() {
|
|
|
18592
18610
|
localeError: error36()
|
|
18593
18611
|
};
|
|
18594
18612
|
}
|
|
18595
|
-
// node_modules/zod/v4/locales/sv.js
|
|
18613
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/sv.js
|
|
18596
18614
|
var error37 = () => {
|
|
18597
18615
|
const Sizable = {
|
|
18598
18616
|
string: { unit: "tecken", verb: "att ha" },
|
|
@@ -18702,7 +18720,7 @@ function sv_default() {
|
|
|
18702
18720
|
localeError: error37()
|
|
18703
18721
|
};
|
|
18704
18722
|
}
|
|
18705
|
-
// node_modules/zod/v4/locales/ta.js
|
|
18723
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ta.js
|
|
18706
18724
|
var error38 = () => {
|
|
18707
18725
|
const Sizable = {
|
|
18708
18726
|
string: { unit: "\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD", verb: "\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD" },
|
|
@@ -18812,7 +18830,7 @@ function ta_default() {
|
|
|
18812
18830
|
localeError: error38()
|
|
18813
18831
|
};
|
|
18814
18832
|
}
|
|
18815
|
-
// node_modules/zod/v4/locales/th.js
|
|
18833
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/th.js
|
|
18816
18834
|
var error39 = () => {
|
|
18817
18835
|
const Sizable = {
|
|
18818
18836
|
string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
|
|
@@ -18922,7 +18940,7 @@ function th_default() {
|
|
|
18922
18940
|
localeError: error39()
|
|
18923
18941
|
};
|
|
18924
18942
|
}
|
|
18925
|
-
// node_modules/zod/v4/locales/tr.js
|
|
18943
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/tr.js
|
|
18926
18944
|
var error40 = () => {
|
|
18927
18945
|
const Sizable = {
|
|
18928
18946
|
string: { unit: "karakter", verb: "olmal\u0131" },
|
|
@@ -19027,7 +19045,7 @@ function tr_default() {
|
|
|
19027
19045
|
localeError: error40()
|
|
19028
19046
|
};
|
|
19029
19047
|
}
|
|
19030
|
-
// node_modules/zod/v4/locales/uk.js
|
|
19048
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/uk.js
|
|
19031
19049
|
var error41 = () => {
|
|
19032
19050
|
const Sizable = {
|
|
19033
19051
|
string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
|
|
@@ -19136,11 +19154,11 @@ function uk_default() {
|
|
|
19136
19154
|
};
|
|
19137
19155
|
}
|
|
19138
19156
|
|
|
19139
|
-
// node_modules/zod/v4/locales/ua.js
|
|
19157
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ua.js
|
|
19140
19158
|
function ua_default() {
|
|
19141
19159
|
return uk_default();
|
|
19142
19160
|
}
|
|
19143
|
-
// node_modules/zod/v4/locales/ur.js
|
|
19161
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/ur.js
|
|
19144
19162
|
var error42 = () => {
|
|
19145
19163
|
const Sizable = {
|
|
19146
19164
|
string: { unit: "\u062D\u0631\u0648\u0641", verb: "\u06C1\u0648\u0646\u0627" },
|
|
@@ -19250,7 +19268,7 @@ function ur_default() {
|
|
|
19250
19268
|
localeError: error42()
|
|
19251
19269
|
};
|
|
19252
19270
|
}
|
|
19253
|
-
// node_modules/zod/v4/locales/uz.js
|
|
19271
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/uz.js
|
|
19254
19272
|
var error43 = () => {
|
|
19255
19273
|
const Sizable = {
|
|
19256
19274
|
string: { unit: "belgi", verb: "bo\u2018lishi kerak" },
|
|
@@ -19359,7 +19377,7 @@ function uz_default() {
|
|
|
19359
19377
|
localeError: error43()
|
|
19360
19378
|
};
|
|
19361
19379
|
}
|
|
19362
|
-
// node_modules/zod/v4/locales/vi.js
|
|
19380
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/vi.js
|
|
19363
19381
|
var error44 = () => {
|
|
19364
19382
|
const Sizable = {
|
|
19365
19383
|
string: { unit: "k\xFD t\u1EF1", verb: "c\xF3" },
|
|
@@ -19467,7 +19485,7 @@ function vi_default() {
|
|
|
19467
19485
|
localeError: error44()
|
|
19468
19486
|
};
|
|
19469
19487
|
}
|
|
19470
|
-
// node_modules/zod/v4/locales/zh-CN.js
|
|
19488
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/zh-CN.js
|
|
19471
19489
|
var error45 = () => {
|
|
19472
19490
|
const Sizable = {
|
|
19473
19491
|
string: { unit: "\u5B57\u7B26", verb: "\u5305\u542B" },
|
|
@@ -19576,7 +19594,7 @@ function zh_CN_default() {
|
|
|
19576
19594
|
localeError: error45()
|
|
19577
19595
|
};
|
|
19578
19596
|
}
|
|
19579
|
-
// node_modules/zod/v4/locales/zh-TW.js
|
|
19597
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/zh-TW.js
|
|
19580
19598
|
var error46 = () => {
|
|
19581
19599
|
const Sizable = {
|
|
19582
19600
|
string: { unit: "\u5B57\u5143", verb: "\u64C1\u6709" },
|
|
@@ -19683,7 +19701,7 @@ function zh_TW_default() {
|
|
|
19683
19701
|
localeError: error46()
|
|
19684
19702
|
};
|
|
19685
19703
|
}
|
|
19686
|
-
// node_modules/zod/v4/locales/yo.js
|
|
19704
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/locales/yo.js
|
|
19687
19705
|
var error47 = () => {
|
|
19688
19706
|
const Sizable = {
|
|
19689
19707
|
string: { unit: "\xE0mi", verb: "n\xED" },
|
|
@@ -19790,7 +19808,7 @@ function yo_default() {
|
|
|
19790
19808
|
localeError: error47()
|
|
19791
19809
|
};
|
|
19792
19810
|
}
|
|
19793
|
-
// node_modules/zod/v4/core/registries.js
|
|
19811
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/registries.js
|
|
19794
19812
|
var _a;
|
|
19795
19813
|
var $output = Symbol("ZodOutput");
|
|
19796
19814
|
var $input = Symbol("ZodInput");
|
|
@@ -19840,7 +19858,7 @@ function registry() {
|
|
|
19840
19858
|
}
|
|
19841
19859
|
(_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
|
|
19842
19860
|
var globalRegistry = globalThis.__zod_globalRegistry;
|
|
19843
|
-
// node_modules/zod/v4/core/api.js
|
|
19861
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/api.js
|
|
19844
19862
|
function _string(Class2, params) {
|
|
19845
19863
|
return new Class2({
|
|
19846
19864
|
type: "string",
|
|
@@ -20760,7 +20778,7 @@ function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
|
|
|
20760
20778
|
const inst = new Class2(def);
|
|
20761
20779
|
return inst;
|
|
20762
20780
|
}
|
|
20763
|
-
// node_modules/zod/v4/core/to-json-schema.js
|
|
20781
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/to-json-schema.js
|
|
20764
20782
|
function initializeContext(params) {
|
|
20765
20783
|
let target = params?.target ?? "draft-2020-12";
|
|
20766
20784
|
if (target === "draft-4")
|
|
@@ -21105,7 +21123,7 @@ var createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params) =
|
|
|
21105
21123
|
extractDefs(ctx, schema);
|
|
21106
21124
|
return finalize(ctx, schema);
|
|
21107
21125
|
};
|
|
21108
|
-
// node_modules/zod/v4/core/json-schema-processors.js
|
|
21126
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema-processors.js
|
|
21109
21127
|
var formatMap = {
|
|
21110
21128
|
guid: "uuid",
|
|
21111
21129
|
url: "uri",
|
|
@@ -21650,7 +21668,7 @@ function toJSONSchema(input, params) {
|
|
|
21650
21668
|
extractDefs(ctx, input);
|
|
21651
21669
|
return finalize(ctx, input);
|
|
21652
21670
|
}
|
|
21653
|
-
// node_modules/zod/v4/core/json-schema-generator.js
|
|
21671
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema-generator.js
|
|
21654
21672
|
class JSONSchemaGenerator {
|
|
21655
21673
|
get metadataRegistry() {
|
|
21656
21674
|
return this.ctx.metadataRegistry;
|
|
@@ -21709,9 +21727,9 @@ class JSONSchemaGenerator {
|
|
|
21709
21727
|
return plainResult;
|
|
21710
21728
|
}
|
|
21711
21729
|
}
|
|
21712
|
-
// node_modules/zod/v4/core/json-schema.js
|
|
21730
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema.js
|
|
21713
21731
|
var exports_json_schema = {};
|
|
21714
|
-
// node_modules/zod/v4/mini/schemas.js
|
|
21732
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/mini/schemas.js
|
|
21715
21733
|
var ZodMiniType = /* @__PURE__ */ $constructor("ZodMiniType", (inst, def) => {
|
|
21716
21734
|
if (!inst._zod)
|
|
21717
21735
|
throw new Error("Uninitialized schema in ZodMiniType.");
|
|
@@ -21897,7 +21915,7 @@ function getLiteralValue(schema) {
|
|
|
21897
21915
|
return;
|
|
21898
21916
|
}
|
|
21899
21917
|
|
|
21900
|
-
// node_modules/zod/v4/classic/external.js
|
|
21918
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/external.js
|
|
21901
21919
|
var exports_external = {};
|
|
21902
21920
|
__export(exports_external, {
|
|
21903
21921
|
xor: () => xor,
|
|
@@ -22138,7 +22156,7 @@ __export(exports_external, {
|
|
|
22138
22156
|
$brand: () => $brand
|
|
22139
22157
|
});
|
|
22140
22158
|
|
|
22141
|
-
// node_modules/zod/v4/classic/schemas.js
|
|
22159
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.js
|
|
22142
22160
|
var exports_schemas2 = {};
|
|
22143
22161
|
__export(exports_schemas2, {
|
|
22144
22162
|
xor: () => xor,
|
|
@@ -22307,7 +22325,7 @@ __export(exports_schemas2, {
|
|
|
22307
22325
|
ZodAny: () => ZodAny2
|
|
22308
22326
|
});
|
|
22309
22327
|
|
|
22310
|
-
// node_modules/zod/v4/classic/checks.js
|
|
22328
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/checks.js
|
|
22311
22329
|
var exports_checks2 = {};
|
|
22312
22330
|
__export(exports_checks2, {
|
|
22313
22331
|
uppercase: () => _uppercase,
|
|
@@ -22341,7 +22359,7 @@ __export(exports_checks2, {
|
|
|
22341
22359
|
endsWith: () => _endsWith
|
|
22342
22360
|
});
|
|
22343
22361
|
|
|
22344
|
-
// node_modules/zod/v4/classic/iso.js
|
|
22362
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/iso.js
|
|
22345
22363
|
var exports_iso2 = {};
|
|
22346
22364
|
__export(exports_iso2, {
|
|
22347
22365
|
time: () => time2,
|
|
@@ -22382,7 +22400,7 @@ function duration2(params) {
|
|
|
22382
22400
|
return _isoDuration(ZodISODuration, params);
|
|
22383
22401
|
}
|
|
22384
22402
|
|
|
22385
|
-
// node_modules/zod/v4/classic/errors.js
|
|
22403
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/errors.js
|
|
22386
22404
|
var initializer2 = (inst, issues) => {
|
|
22387
22405
|
$ZodError.init(inst, issues);
|
|
22388
22406
|
inst.name = "ZodError";
|
|
@@ -22417,7 +22435,7 @@ var ZodRealError = $constructor("ZodError", initializer2, {
|
|
|
22417
22435
|
Parent: Error
|
|
22418
22436
|
});
|
|
22419
22437
|
|
|
22420
|
-
// node_modules/zod/v4/classic/parse.js
|
|
22438
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/parse.js
|
|
22421
22439
|
var parse4 = /* @__PURE__ */ _parse(ZodRealError);
|
|
22422
22440
|
var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
|
|
22423
22441
|
var safeParse3 = /* @__PURE__ */ _safeParse(ZodRealError);
|
|
@@ -22431,7 +22449,7 @@ var safeDecode2 = /* @__PURE__ */ _safeDecode(ZodRealError);
|
|
|
22431
22449
|
var safeEncodeAsync2 = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
|
|
22432
22450
|
var safeDecodeAsync2 = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
|
|
22433
22451
|
|
|
22434
|
-
// node_modules/zod/v4/classic/schemas.js
|
|
22452
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.js
|
|
22435
22453
|
var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
|
|
22436
22454
|
$ZodType.init(inst, def);
|
|
22437
22455
|
Object.assign(inst["~standard"], {
|
|
@@ -23507,7 +23525,7 @@ function json(params) {
|
|
|
23507
23525
|
function preprocess(fn, schema) {
|
|
23508
23526
|
return pipe(transform(fn), schema);
|
|
23509
23527
|
}
|
|
23510
|
-
// node_modules/zod/v4/classic/compat.js
|
|
23528
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/compat.js
|
|
23511
23529
|
var ZodIssueCode2 = {
|
|
23512
23530
|
invalid_type: "invalid_type",
|
|
23513
23531
|
too_big: "too_big",
|
|
@@ -23531,7 +23549,7 @@ function getErrorMap2() {
|
|
|
23531
23549
|
}
|
|
23532
23550
|
var ZodFirstPartyTypeKind2;
|
|
23533
23551
|
(function(ZodFirstPartyTypeKind3) {})(ZodFirstPartyTypeKind2 || (ZodFirstPartyTypeKind2 = {}));
|
|
23534
|
-
// node_modules/zod/v4/classic/from-json-schema.js
|
|
23552
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/from-json-schema.js
|
|
23535
23553
|
var z = {
|
|
23536
23554
|
...exports_schemas2,
|
|
23537
23555
|
...exports_checks2,
|
|
@@ -23992,7 +24010,7 @@ function fromJSONSchema(schema, params) {
|
|
|
23992
24010
|
};
|
|
23993
24011
|
return convertSchema(schema, ctx);
|
|
23994
24012
|
}
|
|
23995
|
-
// node_modules/zod/v4/classic/coerce.js
|
|
24013
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/coerce.js
|
|
23996
24014
|
var exports_coerce2 = {};
|
|
23997
24015
|
__export(exports_coerce2, {
|
|
23998
24016
|
string: () => string3,
|
|
@@ -24017,7 +24035,7 @@ function date4(params) {
|
|
|
24017
24035
|
return _coercedDate(ZodDate2, params);
|
|
24018
24036
|
}
|
|
24019
24037
|
|
|
24020
|
-
// node_modules/zod/v4/classic/external.js
|
|
24038
|
+
// ../../../../hasnastudio/hasnastudio-alumia/platform/platformdev/platform-alumia/node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/external.js
|
|
24021
24039
|
config(en_default2());
|
|
24022
24040
|
|
|
24023
24041
|
// node_modules/@modelcontextprotocol/sdk/dist/esm/types.js
|
|
@@ -27028,62 +27046,6 @@ class ExperimentalServerTasks {
|
|
|
27028
27046
|
requestStream(request, resultSchema, options) {
|
|
27029
27047
|
return this._server.requestStream(request, resultSchema, options);
|
|
27030
27048
|
}
|
|
27031
|
-
createMessageStream(params, options) {
|
|
27032
|
-
const clientCapabilities = this._server.getClientCapabilities();
|
|
27033
|
-
if ((params.tools || params.toolChoice) && !clientCapabilities?.sampling?.tools) {
|
|
27034
|
-
throw new Error("Client does not support sampling tools capability.");
|
|
27035
|
-
}
|
|
27036
|
-
if (params.messages.length > 0) {
|
|
27037
|
-
const lastMessage = params.messages[params.messages.length - 1];
|
|
27038
|
-
const lastContent = Array.isArray(lastMessage.content) ? lastMessage.content : [lastMessage.content];
|
|
27039
|
-
const hasToolResults = lastContent.some((c) => c.type === "tool_result");
|
|
27040
|
-
const previousMessage = params.messages.length > 1 ? params.messages[params.messages.length - 2] : undefined;
|
|
27041
|
-
const previousContent = previousMessage ? Array.isArray(previousMessage.content) ? previousMessage.content : [previousMessage.content] : [];
|
|
27042
|
-
const hasPreviousToolUse = previousContent.some((c) => c.type === "tool_use");
|
|
27043
|
-
if (hasToolResults) {
|
|
27044
|
-
if (lastContent.some((c) => c.type !== "tool_result")) {
|
|
27045
|
-
throw new Error("The last message must contain only tool_result content if any is present");
|
|
27046
|
-
}
|
|
27047
|
-
if (!hasPreviousToolUse) {
|
|
27048
|
-
throw new Error("tool_result blocks are not matching any tool_use from the previous message");
|
|
27049
|
-
}
|
|
27050
|
-
}
|
|
27051
|
-
if (hasPreviousToolUse) {
|
|
27052
|
-
const toolUseIds = new Set(previousContent.filter((c) => c.type === "tool_use").map((c) => c.id));
|
|
27053
|
-
const toolResultIds = new Set(lastContent.filter((c) => c.type === "tool_result").map((c) => c.toolUseId));
|
|
27054
|
-
if (toolUseIds.size !== toolResultIds.size || ![...toolUseIds].every((id) => toolResultIds.has(id))) {
|
|
27055
|
-
throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match");
|
|
27056
|
-
}
|
|
27057
|
-
}
|
|
27058
|
-
}
|
|
27059
|
-
return this.requestStream({
|
|
27060
|
-
method: "sampling/createMessage",
|
|
27061
|
-
params
|
|
27062
|
-
}, CreateMessageResultSchema, options);
|
|
27063
|
-
}
|
|
27064
|
-
elicitInputStream(params, options) {
|
|
27065
|
-
const clientCapabilities = this._server.getClientCapabilities();
|
|
27066
|
-
const mode = params.mode ?? "form";
|
|
27067
|
-
switch (mode) {
|
|
27068
|
-
case "url": {
|
|
27069
|
-
if (!clientCapabilities?.elicitation?.url) {
|
|
27070
|
-
throw new Error("Client does not support url elicitation.");
|
|
27071
|
-
}
|
|
27072
|
-
break;
|
|
27073
|
-
}
|
|
27074
|
-
case "form": {
|
|
27075
|
-
if (!clientCapabilities?.elicitation?.form) {
|
|
27076
|
-
throw new Error("Client does not support form elicitation.");
|
|
27077
|
-
}
|
|
27078
|
-
break;
|
|
27079
|
-
}
|
|
27080
|
-
}
|
|
27081
|
-
const normalizedParams = mode === "form" && params.mode === undefined ? { ...params, mode: "form" } : params;
|
|
27082
|
-
return this.requestStream({
|
|
27083
|
-
method: "elicitation/create",
|
|
27084
|
-
params: normalizedParams
|
|
27085
|
-
}, ElicitResultSchema, options);
|
|
27086
|
-
}
|
|
27087
27049
|
async getTask(taskId, options) {
|
|
27088
27050
|
return this._server.getTask({ taskId }, options);
|
|
27089
27051
|
}
|
|
@@ -28604,7 +28566,7 @@ import { homedir as homedir2 } from "os";
|
|
|
28604
28566
|
// package.json
|
|
28605
28567
|
var package_default = {
|
|
28606
28568
|
name: "@hasna/skills",
|
|
28607
|
-
version: "0.1.
|
|
28569
|
+
version: "0.1.14",
|
|
28608
28570
|
description: "Skills library for AI coding agents",
|
|
28609
28571
|
type: "module",
|
|
28610
28572
|
bin: {
|
|
@@ -28627,9 +28589,12 @@ var package_default = {
|
|
|
28627
28589
|
main: "./dist/index.js",
|
|
28628
28590
|
types: "./dist/index.d.ts",
|
|
28629
28591
|
scripts: {
|
|
28630
|
-
|
|
28592
|
+
clean: "rm -rf bin/ dist/",
|
|
28593
|
+
build: "bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist",
|
|
28631
28594
|
test: "bun test",
|
|
28632
28595
|
dev: "bun run ./src/cli/index.tsx",
|
|
28596
|
+
"dev:watch": "bun --watch run ./src/cli/index.tsx",
|
|
28597
|
+
"dev:mcp": "bun --watch run ./src/mcp/index.ts",
|
|
28633
28598
|
typecheck: "tsc --noEmit",
|
|
28634
28599
|
prepublishOnly: "bun run build",
|
|
28635
28600
|
"dashboard:dev": "cd dashboard && bun run dev",
|
|
@@ -30206,9 +30171,24 @@ function searchSkills(query) {
|
|
|
30206
30171
|
function getSkill(name) {
|
|
30207
30172
|
return SKILLS.find((s) => s.name === name);
|
|
30208
30173
|
}
|
|
30174
|
+
function levenshtein(a, b) {
|
|
30175
|
+
const m = a.length, n = b.length;
|
|
30176
|
+
const dp = Array.from({ length: m + 1 }, (_, i) => Array.from({ length: n + 1 }, (_2, j) => i === 0 ? j : j === 0 ? i : 0));
|
|
30177
|
+
for (let i = 1;i <= m; i++) {
|
|
30178
|
+
for (let j = 1;j <= n; j++) {
|
|
30179
|
+
dp[i][j] = a[i - 1] === b[j - 1] ? dp[i - 1][j - 1] : 1 + Math.min(dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1]);
|
|
30180
|
+
}
|
|
30181
|
+
}
|
|
30182
|
+
return dp[m][n];
|
|
30183
|
+
}
|
|
30184
|
+
function findSimilarSkills(query, maxResults = 3) {
|
|
30185
|
+
const q = query.toLowerCase();
|
|
30186
|
+
const scored = SKILLS.map((s) => ({ name: s.name, dist: levenshtein(q, s.name.toLowerCase()) })).filter((s) => s.dist <= Math.max(3, Math.floor(q.length / 2))).sort((a, b) => a.dist - b.dist);
|
|
30187
|
+
return scored.slice(0, maxResults).map((s) => s.name);
|
|
30188
|
+
}
|
|
30209
30189
|
|
|
30210
30190
|
// src/lib/installer.ts
|
|
30211
|
-
import { existsSync, cpSync, mkdirSync, writeFileSync, rmSync, readdirSync, statSync, readFileSync } from "fs";
|
|
30191
|
+
import { existsSync, cpSync, mkdirSync, writeFileSync, rmSync, readdirSync, statSync, readFileSync, accessSync, constants } from "fs";
|
|
30212
30192
|
import { join, dirname } from "path";
|
|
30213
30193
|
import { homedir } from "os";
|
|
30214
30194
|
import { fileURLToPath } from "url";
|
|
@@ -30272,6 +30252,7 @@ function installSkill(name, options = {}) {
|
|
|
30272
30252
|
}
|
|
30273
30253
|
});
|
|
30274
30254
|
updateSkillsIndex(destDir);
|
|
30255
|
+
recordInstall(destDir, name);
|
|
30275
30256
|
const meta3 = getSkill(name);
|
|
30276
30257
|
if (meta3?.dependencies && meta3.dependencies.length > 0) {
|
|
30277
30258
|
const installed = getInstalledSkills(targetDir);
|
|
@@ -30297,7 +30278,9 @@ function installSkill(name, options = {}) {
|
|
|
30297
30278
|
}
|
|
30298
30279
|
function updateSkillsIndex(skillsDir) {
|
|
30299
30280
|
const indexPath = join(skillsDir, "index.ts");
|
|
30300
|
-
const
|
|
30281
|
+
const meta3 = loadMeta(skillsDir);
|
|
30282
|
+
const disabledSet = new Set(meta3.disabled || []);
|
|
30283
|
+
const skills = readdirSync(skillsDir).filter((f) => f.startsWith("skill-") && !f.includes(".") && !disabledSet.has(f.replace("skill-", "")));
|
|
30301
30284
|
const exports = skills.map((s) => {
|
|
30302
30285
|
const name = s.replace("skill-", "").replace(/-/g, "_");
|
|
30303
30286
|
return `export * as ${name} from './${s}/src/index.js';`;
|
|
@@ -30312,6 +30295,40 @@ ${exports}
|
|
|
30312
30295
|
`;
|
|
30313
30296
|
writeFileSync(indexPath, content);
|
|
30314
30297
|
}
|
|
30298
|
+
function getMetaPath(skillsDir) {
|
|
30299
|
+
return join(skillsDir, ".meta.json");
|
|
30300
|
+
}
|
|
30301
|
+
function loadMeta(skillsDir) {
|
|
30302
|
+
const metaPath = getMetaPath(skillsDir);
|
|
30303
|
+
if (existsSync(metaPath)) {
|
|
30304
|
+
try {
|
|
30305
|
+
return JSON.parse(readFileSync(metaPath, "utf-8"));
|
|
30306
|
+
} catch {}
|
|
30307
|
+
}
|
|
30308
|
+
return { skills: {} };
|
|
30309
|
+
}
|
|
30310
|
+
function saveMeta(skillsDir, meta3) {
|
|
30311
|
+
writeFileSync(getMetaPath(skillsDir), JSON.stringify(meta3, null, 2));
|
|
30312
|
+
}
|
|
30313
|
+
function recordInstall(skillsDir, name) {
|
|
30314
|
+
const meta3 = loadMeta(skillsDir);
|
|
30315
|
+
const skillName = normalizeSkillName(name);
|
|
30316
|
+
let version2 = "unknown";
|
|
30317
|
+
try {
|
|
30318
|
+
const pkgPath = join(skillsDir, skillName, "package.json");
|
|
30319
|
+
if (existsSync(pkgPath)) {
|
|
30320
|
+
const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
|
|
30321
|
+
version2 = pkg.version || "unknown";
|
|
30322
|
+
}
|
|
30323
|
+
} catch {}
|
|
30324
|
+
meta3.skills[name] = { installedAt: new Date().toISOString(), version: version2 };
|
|
30325
|
+
saveMeta(skillsDir, meta3);
|
|
30326
|
+
}
|
|
30327
|
+
function recordRemove(skillsDir, name) {
|
|
30328
|
+
const meta3 = loadMeta(skillsDir);
|
|
30329
|
+
delete meta3.skills[name];
|
|
30330
|
+
saveMeta(skillsDir, meta3);
|
|
30331
|
+
}
|
|
30315
30332
|
function getInstalledSkills(targetDir = process.cwd()) {
|
|
30316
30333
|
const skillsDir = join(targetDir, ".skills");
|
|
30317
30334
|
if (!existsSync(skillsDir)) {
|
|
@@ -30331,6 +30348,7 @@ function removeSkill(name, targetDir = process.cwd()) {
|
|
|
30331
30348
|
}
|
|
30332
30349
|
rmSync(skillPath, { recursive: true, force: true });
|
|
30333
30350
|
updateSkillsIndex(skillsDir);
|
|
30351
|
+
recordRemove(skillsDir, name);
|
|
30334
30352
|
return true;
|
|
30335
30353
|
}
|
|
30336
30354
|
var AGENT_TARGETS = ["claude", "codex", "gemini"];
|
|
@@ -30372,6 +30390,30 @@ function installSkillForAgent(name, options, generateSkillMd) {
|
|
|
30372
30390
|
return { skill: name, success: false, error: `No SKILL.md found and could not generate one for '${name}'` };
|
|
30373
30391
|
}
|
|
30374
30392
|
const destDir = getAgentSkillPath(name, agent, scope, projectDir);
|
|
30393
|
+
if (scope === "global") {
|
|
30394
|
+
const agentBaseDir = join(homedir(), `.${agent}`);
|
|
30395
|
+
if (!existsSync(agentBaseDir)) {
|
|
30396
|
+
const agentLabels = {
|
|
30397
|
+
claude: "Claude Code",
|
|
30398
|
+
codex: "Codex CLI",
|
|
30399
|
+
gemini: "Gemini CLI"
|
|
30400
|
+
};
|
|
30401
|
+
return {
|
|
30402
|
+
skill: name,
|
|
30403
|
+
success: false,
|
|
30404
|
+
error: `Agent directory ${agentBaseDir} does not exist. Is ${agentLabels[agent]} installed?`
|
|
30405
|
+
};
|
|
30406
|
+
}
|
|
30407
|
+
try {
|
|
30408
|
+
accessSync(agentBaseDir, constants.W_OK);
|
|
30409
|
+
} catch {
|
|
30410
|
+
return {
|
|
30411
|
+
skill: name,
|
|
30412
|
+
success: false,
|
|
30413
|
+
error: `Agent directory ${agentBaseDir} is not writable. Check permissions.`
|
|
30414
|
+
};
|
|
30415
|
+
}
|
|
30416
|
+
}
|
|
30375
30417
|
try {
|
|
30376
30418
|
mkdirSync(destDir, { recursive: true });
|
|
30377
30419
|
writeFileSync(join(destDir, "SKILL.md"), skillMdContent);
|
|
@@ -30633,30 +30675,90 @@ var server = new McpServer({
|
|
|
30633
30675
|
function stripNulls(obj) {
|
|
30634
30676
|
return Object.fromEntries(Object.entries(obj).filter(([, v]) => v !== null && v !== undefined && !(Array.isArray(v) && v.length === 0)));
|
|
30635
30677
|
}
|
|
30678
|
+
var searchCache = new Map;
|
|
30679
|
+
var CACHE_MAX = 100;
|
|
30680
|
+
function cacheGet(key) {
|
|
30681
|
+
return searchCache.get(key);
|
|
30682
|
+
}
|
|
30683
|
+
function cacheSet(key, value) {
|
|
30684
|
+
if (searchCache.size >= CACHE_MAX) {
|
|
30685
|
+
const first = searchCache.keys().next().value;
|
|
30686
|
+
if (first !== undefined)
|
|
30687
|
+
searchCache.delete(first);
|
|
30688
|
+
}
|
|
30689
|
+
searchCache.set(key, value);
|
|
30690
|
+
}
|
|
30691
|
+
function cacheClear() {
|
|
30692
|
+
searchCache.clear();
|
|
30693
|
+
}
|
|
30694
|
+
function mcpError(code, message, suggestions) {
|
|
30695
|
+
const obj = { code, message };
|
|
30696
|
+
if (suggestions && suggestions.length > 0)
|
|
30697
|
+
obj.suggestions = suggestions;
|
|
30698
|
+
return {
|
|
30699
|
+
content: [{ type: "text", text: JSON.stringify(obj) }],
|
|
30700
|
+
isError: true
|
|
30701
|
+
};
|
|
30702
|
+
}
|
|
30636
30703
|
server.registerTool("list_skills", {
|
|
30637
30704
|
title: "List Skills",
|
|
30638
|
-
description: "List skills. Returns {name,category} by default; detail:true for full objects.",
|
|
30705
|
+
description: "List skills. Returns {name,category} by default; detail:true for full objects. Supports limit/offset pagination.",
|
|
30639
30706
|
inputSchema: {
|
|
30640
30707
|
category: exports_external.string().optional(),
|
|
30641
|
-
detail: exports_external.boolean().optional()
|
|
30708
|
+
detail: exports_external.boolean().optional(),
|
|
30709
|
+
limit: exports_external.number().optional(),
|
|
30710
|
+
offset: exports_external.number().optional()
|
|
30642
30711
|
}
|
|
30643
|
-
}, async ({ category, detail }) => {
|
|
30712
|
+
}, async ({ category, detail, limit, offset }) => {
|
|
30644
30713
|
const skills = category ? getSkillsByCategory(category) : SKILLS;
|
|
30645
|
-
const
|
|
30714
|
+
const mapped = detail ? skills : skills.map((s) => ({ name: s.name, category: s.category }));
|
|
30715
|
+
if (limit !== undefined || offset !== undefined) {
|
|
30716
|
+
const start = offset || 0;
|
|
30717
|
+
const sliced = limit !== undefined ? mapped.slice(start, start + limit) : mapped.slice(start);
|
|
30718
|
+
return {
|
|
30719
|
+
content: [{ type: "text", text: JSON.stringify({ skills: sliced, total: mapped.length, offset: start, limit: limit ?? null }) }]
|
|
30720
|
+
};
|
|
30721
|
+
}
|
|
30646
30722
|
return {
|
|
30647
|
-
content: [{ type: "text", text: JSON.stringify(
|
|
30723
|
+
content: [{ type: "text", text: JSON.stringify(mapped) }]
|
|
30724
|
+
};
|
|
30725
|
+
});
|
|
30726
|
+
server.registerTool("list_installed_skills", {
|
|
30727
|
+
title: "List Installed Skills",
|
|
30728
|
+
description: "List skills installed in the current project's .skills/ directory.",
|
|
30729
|
+
inputSchema: {
|
|
30730
|
+
directory: exports_external.string().optional()
|
|
30731
|
+
}
|
|
30732
|
+
}, async ({ directory }) => {
|
|
30733
|
+
const dir = directory || process.cwd();
|
|
30734
|
+
const installed = getInstalledSkills(dir);
|
|
30735
|
+
return {
|
|
30736
|
+
content: [{ type: "text", text: JSON.stringify({ directory: dir, count: installed.length, skills: installed }) }]
|
|
30648
30737
|
};
|
|
30649
30738
|
});
|
|
30650
30739
|
server.registerTool("search_skills", {
|
|
30651
30740
|
title: "Search Skills",
|
|
30652
|
-
description: "Search skills by name, description, or tags. Returns compact list by default.",
|
|
30741
|
+
description: "Search skills by name, description, or tags. Returns compact list by default. Supports limit/offset pagination.",
|
|
30653
30742
|
inputSchema: {
|
|
30654
30743
|
query: exports_external.string(),
|
|
30655
|
-
detail: exports_external.boolean().optional()
|
|
30656
|
-
|
|
30657
|
-
|
|
30658
|
-
|
|
30744
|
+
detail: exports_external.boolean().optional(),
|
|
30745
|
+
limit: exports_external.number().optional(),
|
|
30746
|
+
offset: exports_external.number().optional()
|
|
30747
|
+
}
|
|
30748
|
+
}, async ({ query, detail, limit, offset }) => {
|
|
30749
|
+
const cacheKey = `${query}:${detail ?? false}`;
|
|
30750
|
+
const cached2 = cacheGet(cacheKey);
|
|
30751
|
+
const results = cached2 ? cached2 : searchSkills(query);
|
|
30752
|
+
if (!cached2)
|
|
30753
|
+
cacheSet(cacheKey, results);
|
|
30659
30754
|
const out = detail ? results : results.map((s) => ({ name: s.name, category: s.category }));
|
|
30755
|
+
if (limit !== undefined || offset !== undefined) {
|
|
30756
|
+
const start = offset || 0;
|
|
30757
|
+
const sliced = limit !== undefined ? out.slice(start, start + limit) : out.slice(start);
|
|
30758
|
+
return {
|
|
30759
|
+
content: [{ type: "text", text: JSON.stringify({ skills: sliced, total: out.length, offset: start, limit: limit ?? null }) }]
|
|
30760
|
+
};
|
|
30761
|
+
}
|
|
30660
30762
|
return {
|
|
30661
30763
|
content: [{ type: "text", text: JSON.stringify(out) }]
|
|
30662
30764
|
};
|
|
@@ -30670,7 +30772,7 @@ server.registerTool("get_skill_info", {
|
|
|
30670
30772
|
}, async ({ name }) => {
|
|
30671
30773
|
const skill = getSkill(name);
|
|
30672
30774
|
if (!skill) {
|
|
30673
|
-
return
|
|
30775
|
+
return mcpError("SKILL_NOT_FOUND", `Skill '${name}' not found`, findSimilarSkills(name));
|
|
30674
30776
|
}
|
|
30675
30777
|
const reqs = getSkillRequirements(name);
|
|
30676
30778
|
const result = stripNulls({ ...skill, ...reqs });
|
|
@@ -30687,7 +30789,7 @@ server.registerTool("get_skill_docs", {
|
|
|
30687
30789
|
}, async ({ name }) => {
|
|
30688
30790
|
const doc2 = getSkillBestDoc(name);
|
|
30689
30791
|
if (!doc2) {
|
|
30690
|
-
return
|
|
30792
|
+
return mcpError("NO_DOCS", `No documentation found for '${name}'`);
|
|
30691
30793
|
}
|
|
30692
30794
|
return { content: [{ type: "text", text: doc2 }] };
|
|
30693
30795
|
});
|
|
@@ -30705,10 +30807,7 @@ server.registerTool("install_skill", {
|
|
|
30705
30807
|
try {
|
|
30706
30808
|
agents = resolveAgents(agentArg);
|
|
30707
30809
|
} catch (err) {
|
|
30708
|
-
return
|
|
30709
|
-
content: [{ type: "text", text: err.message }],
|
|
30710
|
-
isError: true
|
|
30711
|
-
};
|
|
30810
|
+
return mcpError("INVALID_AGENT", err.message, ["claude", "codex", "gemini", "all"]);
|
|
30712
30811
|
}
|
|
30713
30812
|
const results = agents.map((a) => installSkillForAgent(name, { agent: a, scope: scope || "global" }, generateSkillMd));
|
|
30714
30813
|
return {
|
|
@@ -30717,6 +30816,8 @@ server.registerTool("install_skill", {
|
|
|
30717
30816
|
};
|
|
30718
30817
|
}
|
|
30719
30818
|
const result = installSkill(name);
|
|
30819
|
+
if (result.success)
|
|
30820
|
+
cacheClear();
|
|
30720
30821
|
return {
|
|
30721
30822
|
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
30722
30823
|
isError: !result.success
|
|
@@ -30734,8 +30835,7 @@ server.registerTool("install_category", {
|
|
|
30734
30835
|
const matchedCategory = CATEGORIES.find((c) => c.toLowerCase() === category.toLowerCase());
|
|
30735
30836
|
if (!matchedCategory) {
|
|
30736
30837
|
return {
|
|
30737
|
-
|
|
30738
|
-
isError: true
|
|
30838
|
+
...mcpError("UNKNOWN_CATEGORY", `Unknown category: ${category}`, CATEGORIES.slice())
|
|
30739
30839
|
};
|
|
30740
30840
|
}
|
|
30741
30841
|
const categorySkills = getSkillsByCategory(matchedCategory);
|
|
@@ -30745,10 +30845,7 @@ server.registerTool("install_category", {
|
|
|
30745
30845
|
try {
|
|
30746
30846
|
agents = resolveAgents(agentArg);
|
|
30747
30847
|
} catch (err) {
|
|
30748
|
-
return
|
|
30749
|
-
content: [{ type: "text", text: err.message }],
|
|
30750
|
-
isError: true
|
|
30751
|
-
};
|
|
30848
|
+
return mcpError("INVALID_AGENT", err.message, ["claude", "codex", "gemini", "all"]);
|
|
30752
30849
|
}
|
|
30753
30850
|
const results2 = [];
|
|
30754
30851
|
for (const name of names) {
|
|
@@ -30782,10 +30879,7 @@ server.registerTool("remove_skill", {
|
|
|
30782
30879
|
try {
|
|
30783
30880
|
agents = resolveAgents(agentArg);
|
|
30784
30881
|
} catch (err) {
|
|
30785
|
-
return
|
|
30786
|
-
content: [{ type: "text", text: err.message }],
|
|
30787
|
-
isError: true
|
|
30788
|
-
};
|
|
30882
|
+
return mcpError("INVALID_AGENT", err.message, ["claude", "codex", "gemini", "all"]);
|
|
30789
30883
|
}
|
|
30790
30884
|
const results = agents.map((a) => ({
|
|
30791
30885
|
skill: name,
|
|
@@ -30797,6 +30891,8 @@ server.registerTool("remove_skill", {
|
|
|
30797
30891
|
};
|
|
30798
30892
|
}
|
|
30799
30893
|
const removed = removeSkill(name);
|
|
30894
|
+
if (removed)
|
|
30895
|
+
cacheClear();
|
|
30800
30896
|
return {
|
|
30801
30897
|
content: [{ type: "text", text: JSON.stringify({ skill: name, removed }, null, 2) }]
|
|
30802
30898
|
};
|
|
@@ -30833,7 +30929,7 @@ server.registerTool("get_requirements", {
|
|
|
30833
30929
|
}, async ({ name }) => {
|
|
30834
30930
|
const reqs = getSkillRequirements(name);
|
|
30835
30931
|
if (!reqs) {
|
|
30836
|
-
return
|
|
30932
|
+
return mcpError("SKILL_NOT_FOUND", `Skill '${name}' not found`, findSimilarSkills(name));
|
|
30837
30933
|
}
|
|
30838
30934
|
return { content: [{ type: "text", text: JSON.stringify(reqs, null, 2) }] };
|
|
30839
30935
|
});
|
|
@@ -30847,7 +30943,7 @@ server.registerTool("run_skill", {
|
|
|
30847
30943
|
}, async ({ name, args }) => {
|
|
30848
30944
|
const skill = getSkill(name);
|
|
30849
30945
|
if (!skill) {
|
|
30850
|
-
return
|
|
30946
|
+
return mcpError("SKILL_NOT_FOUND", `Skill '${name}' not found`, findSimilarSkills(name));
|
|
30851
30947
|
}
|
|
30852
30948
|
const result = await runSkill(name, args || []);
|
|
30853
30949
|
if (result.error) {
|
|
@@ -30890,10 +30986,7 @@ server.registerTool("import_skills", {
|
|
|
30890
30986
|
try {
|
|
30891
30987
|
agents = resolveAgents(agentArg);
|
|
30892
30988
|
} catch (err) {
|
|
30893
|
-
return
|
|
30894
|
-
content: [{ type: "text", text: err.message }],
|
|
30895
|
-
isError: true
|
|
30896
|
-
};
|
|
30989
|
+
return mcpError("INVALID_AGENT", err.message, ["claude", "codex", "gemini", "all"]);
|
|
30897
30990
|
}
|
|
30898
30991
|
for (const name of skillList) {
|
|
30899
30992
|
const agentResults = agents.map((a) => installSkillForAgent(name, { agent: a, scope: scope || "global" }, generateSkillMd));
|
|
@@ -30978,6 +31071,7 @@ server.registerTool("search_tools", {
|
|
|
30978
31071
|
}, async ({ query }) => {
|
|
30979
31072
|
const all = [
|
|
30980
31073
|
"list_skills",
|
|
31074
|
+
"list_installed_skills",
|
|
30981
31075
|
"search_skills",
|
|
30982
31076
|
"get_skill_info",
|
|
30983
31077
|
"get_skill_docs",
|
|
@@ -31004,6 +31098,7 @@ server.registerTool("describe_tools", {
|
|
|
31004
31098
|
}, async ({ names }) => {
|
|
31005
31099
|
const descriptions = {
|
|
31006
31100
|
list_skills: "List skills {name,category}. Params: category?, detail?",
|
|
31101
|
+
list_installed_skills: "List installed skills in .skills/. Params: directory?",
|
|
31007
31102
|
search_skills: "Search skills by name/tags. Params: query, detail?",
|
|
31008
31103
|
get_skill_info: "Get skill metadata and env vars. Params: name",
|
|
31009
31104
|
get_skill_docs: "Get skill documentation. Params: name",
|
|
@@ -31022,6 +31117,32 @@ server.registerTool("describe_tools", {
|
|
|
31022
31117
|
`);
|
|
31023
31118
|
return { content: [{ type: "text", text: result }] };
|
|
31024
31119
|
});
|
|
31120
|
+
var _agentReg = new Map;
|
|
31121
|
+
server.tool("register_agent", "Register this agent session. Returns agent_id for use in heartbeat/set_focus.", { name: exports_external.string(), session_id: exports_external.string().optional() }, async (a) => {
|
|
31122
|
+
const existing = [..._agentReg.values()].find((x) => x.name === a.name);
|
|
31123
|
+
if (existing) {
|
|
31124
|
+
existing.last_seen_at = new Date().toISOString();
|
|
31125
|
+
return { content: [{ type: "text", text: JSON.stringify(existing) }] };
|
|
31126
|
+
}
|
|
31127
|
+
const id = Math.random().toString(36).slice(2, 10);
|
|
31128
|
+
const ag = { id, name: a.name, last_seen_at: new Date().toISOString() };
|
|
31129
|
+
_agentReg.set(id, ag);
|
|
31130
|
+
return { content: [{ type: "text", text: JSON.stringify(ag) }] };
|
|
31131
|
+
});
|
|
31132
|
+
server.tool("heartbeat", "Update last_seen_at to signal agent is active.", { agent_id: exports_external.string() }, async (a) => {
|
|
31133
|
+
const ag = _agentReg.get(a.agent_id);
|
|
31134
|
+
if (!ag)
|
|
31135
|
+
return { content: [{ type: "text", text: `Agent not found: ${a.agent_id}` }], isError: true };
|
|
31136
|
+
ag.last_seen_at = new Date().toISOString();
|
|
31137
|
+
return { content: [{ type: "text", text: `\u2665 ${ag.name} \u2014 active` }] };
|
|
31138
|
+
});
|
|
31139
|
+
server.tool("set_focus", "Set active project context for this agent session.", { agent_id: exports_external.string(), project_id: exports_external.string().optional() }, async (a) => {
|
|
31140
|
+
const ag = _agentReg.get(a.agent_id);
|
|
31141
|
+
if (!ag)
|
|
31142
|
+
return { content: [{ type: "text", text: `Agent not found: ${a.agent_id}` }], isError: true };
|
|
31143
|
+
ag.project_id = a.project_id;
|
|
31144
|
+
return { content: [{ type: "text", text: a.project_id ? `Focus: ${a.project_id}` : "Focus cleared" }] };
|
|
31145
|
+
});
|
|
31025
31146
|
async function main() {
|
|
31026
31147
|
const transport = new StdioServerTransport;
|
|
31027
31148
|
await server.connect(transport);
|