@dxtmisha/functional-basic 1.10.0 → 1.11.0

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/CHANGELOG.md CHANGED
@@ -2,17 +2,41 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [1.11.0] - 2026-09-07
6
+
7
+ ### Added
8
+ - **Configuration Types**:
9
+ - Added `DesignUiConfigPackagePrompt`, `promptInclude`, and `promptPackageOnly` type definitions to `src/types/basicTypes.ts`.
10
+ - Added AI resource documentation for `design-config.md` with prompt exclusion rules.
11
+
12
+ ### Changed
13
+ - **Dependencies**:
14
+ - Updated workspace package dependencies to explicit `>=` semver ranges (`@dxtmisha/media >= 0.7.3`).
15
+ - **AI Documentation**:
16
+ - Refined descriptions and updated MD5 hashes in `ai-types-list/resources/` for `design-config.json` and `error-center.json`.
17
+
18
+ ## [1.10.1] - 2026-08-30
19
+
20
+ ### Added
21
+ - **Documentation**:
22
+ - Migrated package documentation to `src/storybook/` with comprehensive guides across English, Russian, and Vietnamese.
23
+
24
+ ### Changed
25
+ - **Build Configuration**:
26
+ - Migrated `vite.config.ts` to use `viteBasicFunction()` from `@dxtmisha/configuration`.
27
+ - **AI Type Definitions & Resources**:
28
+ - Reorganized `ai-types-list/` structure to mirror `src/` directory layout.
29
+ - Updated `design-config.json` resource metadata descriptor in `ai-types-list/resources/`.
30
+
5
31
  ## [1.10.0] - 2026-08-30
6
32
 
7
33
  ### Added
8
34
  - **Geo Country Management (`Geo` / `GeoInstance`)**:
9
- - Added `add(item: GeoItem)` and `addList(list: GeoItem[])` methods to dynamically register and merge custom country configurations into the geo registry.
35
+ - Added `add(country: string, item: Partial<GeoItem>)` and `addList(list: Record<string, Partial<GeoItem>>)` methods to dynamically register and merge custom country configurations into the geo registry.
10
36
  - Initialized internal country list directly from the `@dxtmisha/media` dataset, making `getList()` dynamic.
11
37
  - Added unit test coverage for `GeoInstance.add`, `GeoInstance.addList`, `Geo.add`, and `Geo.addList`.
12
38
  - **AI Resources**:
13
39
  - Added `error-center.md` architecture guide in `ai-resources/` and metadata descriptor in `ai-types-list/resources/error-center.json`.
14
- - **Documentation**:
15
- - Migrated package documentation to `src/storybook/` with comprehensive guides across English, Russian, and Vietnamese.
16
40
 
17
41
  ## [1.9.0] - 2026-08-24
18
42
 
package/ai-description.md CHANGED
@@ -1,10 +1,8 @@
1
- An isomorphic TypeScript utility library that provides core infrastructure for HTTP client requests, SSR state hydration, internationalization, and client-side data management. It offers robust tools for URL state handling, DOM events, localization formatting, and error tracking across browser and server environments.
1
+ This package provides a comprehensive isomorphic toolkit containing core services, state managers, and utilities for both browser and server-side runtimes. It includes integrated modules for HTTP requests with SSR hydration and caching, geographic localization, date and measurement unit formatting, dictionary translations, persistent storage, and URL state synchronization. An AI assistant should consult this package when implementing API integration layers, configuring SEO and social metadata, managing multi-locale formatting, or coordinating client-server storage and DOM utilities.
2
2
 
3
- Study ai-types.md when configuring or executing HTTP requests, fetch interceptors, API caching, or SSR hydration; managing cookies, session/local storage, or request-isolated server storage; implementing internationalization, multi-language translations, locale-aware date/time calculations, phone masks, or unit conversions; manipulating URL query parameters and hash routing state; managing SEO meta tags, Open Graph, and Twitter Cards; building searchable list filters with text match highlighting; handling centralized application errors, global loading state, cross-tab broadcast messaging, or DOM event observation and helper utilities.
4
-
5
- Key Capabilities: HTTP Client Management, API Response Caching, SSR State Hydration, Centralized Error Handling, Internationalization Formatting, Geographic Localization, Datetime Manipulation, Phone Dialing Masks, Unit Measurement Conversion, Translation Services, Cookie Management, Isomorphic Storage Isolation, URL State Synchronization, Query Parameter Handling, Hash State Routing, SEO Meta Management, Open Graph Tags, Twitter Card Metadata, Search List Filtering, Text Match Highlighting, DOM Event Control, Global Loading Tracking, Cross-Tab Messaging, Image Resizing Utilities, Clipboard Integration, Data Transformation
3
+ Key Capabilities: API Client, Request Caching, SSR Hydration, API Mocking, Error Management, Geographic Localization, Locale Formatting, Translation Management, Phone Masking, Unit Conversion, DateTime Localization, Cookie Management, Server Storage, Browser Storage, URL State Sync, Broadcast Messaging, SEO Meta Management, Open Graph Metadata, Twitter Card Management, DOM Event Handling, Search List Filtering, Text Highlighting, Clipboard Utilities, Global Loading State
6
4
  ## Mandatory Rules
7
5
  You MUST evaluate whether your task relates to any of the following topics (even if not working directly with this package). If related material is present, you are strictly obligated to read and study the corresponding file before proceeding:
8
- - 'node_modules/@dxtmisha/functional-basic/ai-resources/api-reference.md': Comprehensive API reference and code examples for the @dxtmisha/functional-basic utility package. Covers HTTP networking, client/server storage, internationalization, DOM utilities, and general helper functions. Streamlines common frontend and SSR development tasks including state persistence, API integration, and formatting.
9
- - 'node_modules/@dxtmisha/functional-basic/ai-resources/design-config.md': Defines configuration schemas, inheritance rules, and property references for design.config.json files across DXT UI monorepo packages. It standardizes settings for TypeScript declaration scanning, AI providers, Figma integration, and wiki generation. Serves as the operational guide for setting up design tokens and automated tooling workflows.
10
- - 'node_modules/@dxtmisha/functional-basic/ai-resources/error-center.md': Defines mandatory error management standards and API rules using ErrorCenter in @dxtmisha/functional-basic. Prohibits direct console logging and enforces structured error dispatching across all application domains. Guides error registration, custom group handlers, and external telemetry integration.
6
+ - 'node_modules/@dxtmisha/functional-basic/ai-resources/api-reference.md': API reference and code examples for HTTP client, storage, localization, DOM, and utility functions.
7
+ - 'node_modules/@dxtmisha/functional-basic/ai-resources/design-config.md': Rules and schema for configuring design systems, TypeScript declaration scanning, AI generation, and package settings.
8
+ - 'node_modules/@dxtmisha/functional-basic/ai-resources/error-center.md': Standards and APIs for centralized error handling, routing exceptions via ErrorCenter without direct console logging.
package/ai-doc.md CHANGED
@@ -2,7 +2,7 @@ Framework-agnostic utility library. **Vue developers MUST search `@dxtmisha/func
2
2
 
3
3
  ## Coding Standards & Conventions
4
4
 
5
- - **Class Structure**: Properties/Variables (`public`->`protected`->`private`) -> Constructor -> Public Methods -> Protected Methods -> Private Methods. Within each method group, follow order: 1) `get` / `set` (getters/setters), 2) `is...` / `has...`, 3) `get...` / `set...`, 4) `add...` / `remove...`, 5) `update...` / `reset...`, 6) remaining methods. Within each subgroup, methods are grouped semantically by logical pairs and rules (e.g., `min` / `max`, `width` / `height`, `x` / `y` / `z`), and remaining methods are sorted alphabetically.
5
+ - **Class Structure**: Properties/Variables (`public`->`protected`->`private`) -> Constructor -> Public Methods -> Protected Methods -> Private Methods. Within each method group, follow order: 1) `get` (getters), 2) `set` (setters), 3) `is...`, 4) `has...`, 5) `get...`, 6) `set...`, 7) `add...`, 8) `remove...`, 9) `update...`, 10) `reset...`, 11) remaining methods. Within each subgroup, methods are grouped semantically by logical pairs and rules (e.g., `min` / `max`, `width` / `height`, `x` / `y` / `z`), and remaining methods are sorted alphabetically.
6
6
  - **Style/Types**: `PascalCase` classes, `camelCase` methods/props, `UPPER_SNAKE_CASE` constants. No `any` (use `unknown`/generics). Explicit return types for ALL methods. Export all interfaces. Type files: `*Types.ts`. Use `@effect/schema` for schemas.
7
7
  - **SSR Safety**: Isomorphic code. Do NOT store request state in globals. Use `isDomRuntime()` before `window`/`document`. Use `ServerStorage.get('key', () => new Class())` for request-isolated singletons.
8
8
  - **Utility & Primitive Functions**: ALWAYS use primitive helper functions from this package (e.g. `isFunction`, `executeFunction`, `isFilled`, `isObject`, `isString`, `isArray`, etc.) instead of writing custom inline checks or conditions.
@@ -15,18 +15,18 @@
15
15
  "uri": "@dxtmisha/functional-basic/ai-resources/api-reference.md",
16
16
  "name": "Functional Basic API Reference (@dxtmisha/functional-basic)",
17
17
  "mimeType": "text/markdown",
18
- "description": "Comprehensive API reference and code examples for the @dxtmisha/functional-basic utility package. Covers HTTP networking, client/server storage, internationalization, DOM utilities, and general helper functions. Streamlines common frontend and SSR development tasks including state persistence, API integration, and formatting."
18
+ "description": "API reference and code examples for HTTP client, storage, localization, DOM, and utility functions."
19
19
  },
20
20
  {
21
21
  "uri": "@dxtmisha/functional-basic/ai-resources/design-config.md",
22
- "name": "Design Config Specification (@dxtmisha/functional-basic)",
22
+ "name": "Design System Configuration Guide (@dxtmisha/functional-basic)",
23
23
  "mimeType": "text/markdown",
24
- "description": "Defines configuration schemas, inheritance rules, and property references for design.config.json files across DXT UI monorepo packages. It standardizes settings for TypeScript declaration scanning, AI providers, Figma integration, and wiki generation. Serves as the operational guide for setting up design tokens and automated tooling workflows."
24
+ "description": "Rules and schema for configuring design systems, TypeScript declaration scanning, AI generation, and package settings."
25
25
  },
26
26
  {
27
27
  "uri": "@dxtmisha/functional-basic/ai-resources/error-center.md",
28
- "name": "Centralized Error Handling Guide (@dxtmisha/functional-basic)",
28
+ "name": "ErrorCenter Handling Guide (@dxtmisha/functional-basic)",
29
29
  "mimeType": "text/markdown",
30
- "description": "Defines mandatory error management standards and API rules using ErrorCenter in @dxtmisha/functional-basic. Prohibits direct console logging and enforces structured error dispatching across all application domains. Guides error registration, custom group handlers, and external telemetry integration."
30
+ "description": "Standards and APIs for centralized error handling, routing exceptions via ErrorCenter without direct console logging."
31
31
  }
32
32
  ]
@@ -28,6 +28,9 @@ Configuration specification for DXT UI packages and monorepo root.
28
28
  - `distDir` (`string`, default: `'dist'`): Output directory path for compiled JavaScript files.
29
29
  - `aiResourcesDir` (`string`, default: `'ai-resources'`): Directory path containing AI resource and prompt files.
30
30
  - `promptScanDepth` (`number`, default: `6`): Maximum directory scan depth for collecting AI prompt packages.
31
+ - `promptExclude` (`string | string[]`): List of library names to exclude from the `ai-prompt.md` file (e.g. `["@dxtmisha/styles"]`).
32
+ - `promptInclude` (`string | string[]`): Whitelist of library names to include in the `ai-prompt.md` file; if specified, only these libraries will be included (e.g. `["@dxtmisha/d1", "@dxtmisha/constructor"]`).
33
+ - `promptPackageOnly` (`boolean`, default: `false`): When `true`, restricts `ai-prompt.md` package discovery to only libraries defined in the root `package.json` (`dependencies`, `devDependencies`, etc.).
31
34
  - `separator` (`string`, default: `'/'`): Token path delimiter used when splitting design tokens into sub-branches.
32
35
  - `separatorBasicName` (`string`): Base token name stripped during branch segmentation.
33
36
  - `separatorLimit` (`number`): Maximum recursion depth for token key splitting.
@@ -73,6 +76,9 @@ Complete `design.config.json` incorporating all available configuration properti
73
76
  "distDir": "dist",
74
77
  "aiResourcesDir": "ai-resources",
75
78
  "promptScanDepth": 6,
79
+ "promptExclude": [
80
+ "@dxtmisha/styles"
81
+ ],
76
82
  "separator": "/",
77
83
  "separatorBasicName": "basic",
78
84
  "separatorLimit": 3,
@@ -101,4 +107,5 @@ Complete `design.config.json` incorporating all available configuration properti
101
107
  import { PropertiesConfig } from '../Properties/PropertiesConfig'
102
108
  const isExcluded = PropertiesConfig.getTypesExclude()
103
109
  const skipVue = PropertiesConfig.isTypesWithoutVue()
110
+ const promptExcluded = PropertiesConfig.getPromptExclude()
104
111
  ```