@triptease/design-system-mcp 1.2.11 → 1.2.12
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/index.js +117 -16
- package/package.json +4 -3
package/dist/index.js
CHANGED
|
@@ -7656,11 +7656,11 @@ function datetimeRegex(args) {
|
|
|
7656
7656
|
regex = `${regex}(${opts.join("|")})`;
|
|
7657
7657
|
return new RegExp(`^${regex}$`);
|
|
7658
7658
|
}
|
|
7659
|
-
function isValidIP(ip,
|
|
7660
|
-
if ((
|
|
7659
|
+
function isValidIP(ip, version10) {
|
|
7660
|
+
if ((version10 === "v4" || !version10) && ipv4Regex.test(ip)) {
|
|
7661
7661
|
return true;
|
|
7662
7662
|
}
|
|
7663
|
-
if ((
|
|
7663
|
+
if ((version10 === "v6" || !version10) && ipv6Regex.test(ip)) {
|
|
7664
7664
|
return true;
|
|
7665
7665
|
}
|
|
7666
7666
|
return false;
|
|
@@ -7687,11 +7687,11 @@ function isValidJWT(jwt2, alg) {
|
|
|
7687
7687
|
return false;
|
|
7688
7688
|
}
|
|
7689
7689
|
}
|
|
7690
|
-
function isValidCidr(ip,
|
|
7691
|
-
if ((
|
|
7690
|
+
function isValidCidr(ip, version10) {
|
|
7691
|
+
if ((version10 === "v4" || !version10) && ipv4CidrRegex.test(ip)) {
|
|
7692
7692
|
return true;
|
|
7693
7693
|
}
|
|
7694
|
-
if ((
|
|
7694
|
+
if ((version10 === "v6" || !version10) && ipv6CidrRegex.test(ip)) {
|
|
7695
7695
|
return true;
|
|
7696
7696
|
}
|
|
7697
7697
|
return false;
|
|
@@ -11644,10 +11644,10 @@ var nanoid = /^[a-zA-Z0-9_-]{21}$/;
|
|
|
11644
11644
|
var duration = /^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;
|
|
11645
11645
|
var extendedDuration = /^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/;
|
|
11646
11646
|
var guid = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/;
|
|
11647
|
-
var uuid = (
|
|
11648
|
-
if (!
|
|
11647
|
+
var uuid = (version10) => {
|
|
11648
|
+
if (!version10)
|
|
11649
11649
|
return /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;
|
|
11650
|
-
return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${
|
|
11650
|
+
return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${version10}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`);
|
|
11651
11651
|
};
|
|
11652
11652
|
var uuid4 = /* @__PURE__ */ uuid(4);
|
|
11653
11653
|
var uuid6 = /* @__PURE__ */ uuid(6);
|
|
@@ -23302,7 +23302,7 @@ var StdioServerTransport = class {
|
|
|
23302
23302
|
// package.json
|
|
23303
23303
|
var package_default = {
|
|
23304
23304
|
name: "@triptease/design-system-mcp",
|
|
23305
|
-
version: "1.2.
|
|
23305
|
+
version: "1.2.12",
|
|
23306
23306
|
description: "MCP server for Triptease design system documentation",
|
|
23307
23307
|
type: "module",
|
|
23308
23308
|
main: "dist/index.js",
|
|
@@ -23323,7 +23323,7 @@ var package_default = {
|
|
|
23323
23323
|
node: ">=18.0.0"
|
|
23324
23324
|
},
|
|
23325
23325
|
componentVersions: {
|
|
23326
|
-
"@triptease/stylesheet": "2.1.
|
|
23326
|
+
"@triptease/stylesheet": "2.1.9",
|
|
23327
23327
|
"@triptease/tt-bar-chart": "1.1.3",
|
|
23328
23328
|
"@triptease/tt-combobox": "5.7.4",
|
|
23329
23329
|
"@triptease/tt-data-point": "1.1.1",
|
|
@@ -23337,10 +23337,11 @@ var package_default = {
|
|
|
23337
23337
|
"@triptease/tt-paginator": "1.0.7",
|
|
23338
23338
|
"@triptease/tt-table-wrapper": "1.0.6",
|
|
23339
23339
|
"@triptease/tt-tabs": "1.1.0",
|
|
23340
|
+
"@triptease/tt-repeat-date-picker": "1.0.0",
|
|
23340
23341
|
"@triptease/tt-weekday-picker": "1.0.1"
|
|
23341
23342
|
},
|
|
23342
23343
|
dependencies: {
|
|
23343
|
-
"@triptease/stylesheet": "2.1.
|
|
23344
|
+
"@triptease/stylesheet": "2.1.9"
|
|
23344
23345
|
},
|
|
23345
23346
|
devDependencies: {
|
|
23346
23347
|
"@modelcontextprotocol/sdk": "1.26.0",
|
|
@@ -24016,10 +24017,10 @@ var card_default = {
|
|
|
24016
24017
|
};
|
|
24017
24018
|
|
|
24018
24019
|
// src/utils/buildCDNUrls.ts
|
|
24019
|
-
var buildCDNUrl = (componentName,
|
|
24020
|
-
return `https://cdn.design-system.triptease.io/${componentName}/${
|
|
24020
|
+
var buildCDNUrl = (componentName, version10) => {
|
|
24021
|
+
return `https://cdn.design-system.triptease.io/${componentName}/${version10}/${componentName}.js`;
|
|
24021
24022
|
};
|
|
24022
|
-
var buildMajorVersion = (
|
|
24023
|
+
var buildMajorVersion = (version10) => `${version10.split(".")[0]}.x.x`;
|
|
24023
24024
|
|
|
24024
24025
|
// src/manifests/components/entries/table.ts
|
|
24025
24026
|
var tableWrapperVersion = package_default.componentVersions["@triptease/tt-table-wrapper"];
|
|
@@ -25635,6 +25636,105 @@ var weekdayPicker_default = {
|
|
|
25635
25636
|
}
|
|
25636
25637
|
};
|
|
25637
25638
|
|
|
25639
|
+
// src/manifests/components/entries/repeatDatePicker.ts
|
|
25640
|
+
var version9 = package_default.componentVersions["@triptease/tt-repeat-date-picker"];
|
|
25641
|
+
var repeatDatePicker_default = {
|
|
25642
|
+
"repeat-date-picker": {
|
|
25643
|
+
name: "Repeat Date Picker",
|
|
25644
|
+
description: "A repeat date picker lets users define a date range and optionally schedule it to repeat on a regular basis. The form value is a JSON-encoded { dates, infinite } object. infinite is true only when repeat is on with no defined end condition; it is false when repeat is off or a finite list of occurrences has been set.",
|
|
25645
|
+
ssrSafe: true,
|
|
25646
|
+
element: "tt-repeat-date-picker",
|
|
25647
|
+
usageGuidance: {
|
|
25648
|
+
whenToUse: [
|
|
25649
|
+
"A user needs to schedule a recurring campaign, promotion, or event across multiple date ranges",
|
|
25650
|
+
"A booking offer or rate plan applies to several periods that follow a predictable pattern"
|
|
25651
|
+
],
|
|
25652
|
+
avoid: [
|
|
25653
|
+
"A single, one-off date range is needed \u2014 use the Date Range Picker instead",
|
|
25654
|
+
"Only a single date (not a range) is needed \u2014 use the Date Picker instead"
|
|
25655
|
+
],
|
|
25656
|
+
accessibility: [
|
|
25657
|
+
'Always associate a visible label using a <label for="..."> element \u2014 the component does not render its own label',
|
|
25658
|
+
"The repeat option groups are wrapped in fieldset and legend elements, which screen readers announce as named groups"
|
|
25659
|
+
]
|
|
25660
|
+
},
|
|
25661
|
+
installationOptions: {
|
|
25662
|
+
npm: [{ name: "@triptease/tt-repeat-date-picker", includesTypes: true, optional: false }],
|
|
25663
|
+
cdn: [
|
|
25664
|
+
{
|
|
25665
|
+
name: "@triptease/tt-repeat-date-picker",
|
|
25666
|
+
includesTypes: false,
|
|
25667
|
+
optional: false,
|
|
25668
|
+
moduleFormat: "esm",
|
|
25669
|
+
latestVersionUrl: buildCDNUrl("tt-repeat-date-picker", "latest"),
|
|
25670
|
+
pinnedMajorVersionUrl: buildCDNUrl("tt-repeat-date-picker", buildMajorVersion(version9)),
|
|
25671
|
+
pinnedVersionUrl: buildCDNUrl("tt-repeat-date-picker", version9),
|
|
25672
|
+
guidance: "Prefer pinned major version URL to avoid unexpected breaking changes. Do not use latest version URL in production code."
|
|
25673
|
+
}
|
|
25674
|
+
]
|
|
25675
|
+
},
|
|
25676
|
+
attributes: {
|
|
25677
|
+
name: { type: "string", description: "Form field name used in form data submission" },
|
|
25678
|
+
mindate: { type: "string", description: "Earliest selectable date in YYYY-MM-DD format. Passed through to the internal date range picker." },
|
|
25679
|
+
maxdate: { type: "string", description: "Latest selectable date in YYYY-MM-DD format. Passed through to the internal date range picker." },
|
|
25680
|
+
required: {
|
|
25681
|
+
type: "boolean",
|
|
25682
|
+
description: "Marks the field as required. Reports valueMissing when no date range has been selected"
|
|
25683
|
+
},
|
|
25684
|
+
disabled: { type: "boolean", description: "Disables the date range picker and the repeat checkbox" }
|
|
25685
|
+
},
|
|
25686
|
+
events: {
|
|
25687
|
+
change: {
|
|
25688
|
+
description: "Fired whenever the selected range, repeat settings, or end condition changes. Read the value property to get the updated { dates, infinite } object.",
|
|
25689
|
+
bubbles: true
|
|
25690
|
+
}
|
|
25691
|
+
},
|
|
25692
|
+
examples: [
|
|
25693
|
+
{
|
|
25694
|
+
title: "Basic usage",
|
|
25695
|
+
code: `<label for="promo-dates">Promotional period</label>
|
|
25696
|
+
<tt-repeat-date-picker id="promo-dates" name="repeat-dates"></tt-repeat-date-picker>`
|
|
25697
|
+
},
|
|
25698
|
+
{
|
|
25699
|
+
title: "Date constraints",
|
|
25700
|
+
description: "Use mindate and maxdate to restrict which dates the user can select. Set mindate when the range cannot start before a certain date \u2014 for example, today for a future-only promotion. Set maxdate when the range must end before a certain date \u2014 for example, the end of a campaign window.",
|
|
25701
|
+
code: `<label for="promo-dates">Promotional period</label>
|
|
25702
|
+
<tt-repeat-date-picker id="promo-dates" name="repeat-dates" mindate="2026-01-01" maxdate="2026-12-31"></tt-repeat-date-picker>`
|
|
25703
|
+
},
|
|
25704
|
+
{
|
|
25705
|
+
title: "Disabled",
|
|
25706
|
+
description: "Use the disabled state when scheduling is temporarily unavailable. If scheduling will never be available to this user, consider hiding the component entirely rather than disabling it.",
|
|
25707
|
+
code: `<label for="promo-dates">Promotional period</label>
|
|
25708
|
+
<tt-repeat-date-picker id="promo-dates" name="repeat-dates" disabled></tt-repeat-date-picker>`
|
|
25709
|
+
},
|
|
25710
|
+
{
|
|
25711
|
+
title: "Required",
|
|
25712
|
+
description: "Use required when a schedule must be provided before the form can be submitted. Like a native required input, the component sets a browser validation message, but this produces a disruptive tooltip. Always provide a visible inline error message instead and associate it using aria-describedby.",
|
|
25713
|
+
code: `<form id="required-form" novalidate>
|
|
25714
|
+
<label for="promo-dates">Promotional period</label>
|
|
25715
|
+
<tt-repeat-date-picker id="promo-dates" name="repeat-dates" required aria-describedby="repeat-dates-error"></tt-repeat-date-picker>
|
|
25716
|
+
<span id="repeat-dates-error" hidden>Please select a date range</span>
|
|
25717
|
+
<button type="submit">Submit</button>
|
|
25718
|
+
</form>
|
|
25719
|
+
|
|
25720
|
+
<script>
|
|
25721
|
+
document.getElementById('required-form').addEventListener('submit', (e) => {
|
|
25722
|
+
e.preventDefault();
|
|
25723
|
+
const errorEl = document.getElementById('repeat-dates-error');
|
|
25724
|
+
if (!e.currentTarget.checkValidity()) {
|
|
25725
|
+
errorEl.hidden = false;
|
|
25726
|
+
return;
|
|
25727
|
+
}
|
|
25728
|
+
errorEl.hidden = true;
|
|
25729
|
+
const value = JSON.parse(new FormData(e.currentTarget).get('repeat-dates'));
|
|
25730
|
+
console.log(value); // { dates: [...], infinite: false }
|
|
25731
|
+
});
|
|
25732
|
+
</script>`
|
|
25733
|
+
}
|
|
25734
|
+
]
|
|
25735
|
+
}
|
|
25736
|
+
};
|
|
25737
|
+
|
|
25638
25738
|
// src/manifests/components/index.ts
|
|
25639
25739
|
var componentManifest = {
|
|
25640
25740
|
...button_default,
|
|
@@ -25659,7 +25759,8 @@ var componentManifest = {
|
|
|
25659
25759
|
...banner_default,
|
|
25660
25760
|
...tabs_default,
|
|
25661
25761
|
...paginator_default,
|
|
25662
|
-
...weekdayPicker_default
|
|
25762
|
+
...weekdayPicker_default,
|
|
25763
|
+
...repeatDatePicker_default
|
|
25663
25764
|
};
|
|
25664
25765
|
|
|
25665
25766
|
// src/resources/components/list.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@triptease/design-system-mcp",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.12",
|
|
4
4
|
"description": "MCP server for Triptease design system documentation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"node": ">=18.0.0"
|
|
22
22
|
},
|
|
23
23
|
"componentVersions": {
|
|
24
|
-
"@triptease/stylesheet": "2.1.
|
|
24
|
+
"@triptease/stylesheet": "2.1.9",
|
|
25
25
|
"@triptease/tt-bar-chart": "1.1.3",
|
|
26
26
|
"@triptease/tt-combobox": "5.7.4",
|
|
27
27
|
"@triptease/tt-data-point": "1.1.1",
|
|
@@ -35,10 +35,11 @@
|
|
|
35
35
|
"@triptease/tt-paginator": "1.0.7",
|
|
36
36
|
"@triptease/tt-table-wrapper": "1.0.6",
|
|
37
37
|
"@triptease/tt-tabs": "1.1.0",
|
|
38
|
+
"@triptease/tt-repeat-date-picker": "1.0.0",
|
|
38
39
|
"@triptease/tt-weekday-picker": "1.0.1"
|
|
39
40
|
},
|
|
40
41
|
"dependencies": {
|
|
41
|
-
"@triptease/stylesheet": "2.1.
|
|
42
|
+
"@triptease/stylesheet": "2.1.9"
|
|
42
43
|
},
|
|
43
44
|
"devDependencies": {
|
|
44
45
|
"@modelcontextprotocol/sdk": "1.26.0",
|