rilaykit 0.1.5

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.
@@ -0,0 +1,47 @@
1
+ import { ComponentConfig, FormRenderConfig, WorkflowRenderConfig, RilayInstance } from '@rilaykit/core';
2
+ export * from '@rilaykit/core';
3
+ import { form } from '@rilaykit/forms';
4
+ export * from '@rilaykit/forms';
5
+ import { flow } from '@rilaykit/workflow';
6
+ export { CreateWorkflowStoreOptions, LocalStorageAdapter, LocalStorageAdapterConfig, PersistedWorkflowData, PersistenceOptions, StepContext, StepDefinition, StepMetadata, UsePersistenceProps, UsePersistenceReturn, UseWorkflowActionsResult, Workflow, WorkflowBody, WorkflowContextValue, WorkflowNextButton, WorkflowPersistenceAdapter, WorkflowPersistenceError, WorkflowPreviousButton, WorkflowProvider, WorkflowSkipButton, WorkflowStepper, WorkflowStore, WorkflowStoreContext, WorkflowStoreState, combineWorkflowDataForConditions, createStepContext, createWorkflowStore, debounce, flattenObject, flow, generateStorageKey, mergePersistedState, persistedToWorkflowState, useCurrentStepIndex, useIsStepPassed, useIsStepVisited, usePassedSteps, usePersistence, useStepDataById, useStepMetadata, useVisitedSteps, useWorkflowActions, useWorkflowAllData, useWorkflowAnalytics, useWorkflowConditions, useWorkflowContext, useWorkflowInitializing, useWorkflowNavigation, useWorkflowNavigationState, useWorkflowState, useWorkflowStepData, useWorkflowStore, useWorkflowStoreApi, useWorkflowSubmission, useWorkflowSubmitState, useWorkflowSubmitting, useWorkflowTransitioning, validatePersistedData, workflowStateToPersisted } from '@rilaykit/workflow';
7
+
8
+ /**
9
+ * Enhanced RilayKit interface with convenience .form() and .flow() methods.
10
+ * Available when using the all-in-one `rilaykit` package.
11
+ */
12
+ interface RilayKit<C extends Record<string, any>> {
13
+ addComponent<NewType extends string, TProps = any>(type: NewType, config: Omit<ComponentConfig<TProps>, 'id' | 'type'>): RilayKit<C & {
14
+ [K in NewType]: TProps;
15
+ }>;
16
+ configure(config: Partial<FormRenderConfig & WorkflowRenderConfig>): RilayKit<C>;
17
+ getComponent<T extends keyof C & string>(id: T): ComponentConfig<C[T]> | undefined;
18
+ getComponent(id: string): ComponentConfig | undefined;
19
+ getAllComponents(): ComponentConfig[];
20
+ hasComponent(id: string): boolean;
21
+ getFormRenderConfig(): FormRenderConfig;
22
+ getWorkflowRenderConfig(): WorkflowRenderConfig;
23
+ getStats(): ReturnType<RilayInstance<C>['getStats']>;
24
+ validate(): string[];
25
+ validateAsync(): Promise<{
26
+ isValid: boolean;
27
+ errors: string[];
28
+ warnings?: string[];
29
+ }>;
30
+ clone(): RilayKit<C>;
31
+ removeComponent(id: string): RilayKit<C>;
32
+ clear(): RilayKit<C>;
33
+ form(formId?: string): form<C>;
34
+ flow(workflowId?: string, name?: string, description?: string): flow;
35
+ }
36
+ /**
37
+ * Enhanced ril with .form() and .flow() convenience methods.
38
+ *
39
+ * Drop-in replacement for `ril` from `@rilaykit/core`.
40
+ * Usage is identical: `ril.create()` — but returned instances
41
+ * also have `.form()` and `.flow()` methods.
42
+ */
43
+ declare const ril: {
44
+ readonly create: <CT extends Record<string, any> = Record<string, never>>() => RilayKit<CT>;
45
+ };
46
+
47
+ export { type RilayKit, ril };
@@ -0,0 +1,47 @@
1
+ import { ComponentConfig, FormRenderConfig, WorkflowRenderConfig, RilayInstance } from '@rilaykit/core';
2
+ export * from '@rilaykit/core';
3
+ import { form } from '@rilaykit/forms';
4
+ export * from '@rilaykit/forms';
5
+ import { flow } from '@rilaykit/workflow';
6
+ export { CreateWorkflowStoreOptions, LocalStorageAdapter, LocalStorageAdapterConfig, PersistedWorkflowData, PersistenceOptions, StepContext, StepDefinition, StepMetadata, UsePersistenceProps, UsePersistenceReturn, UseWorkflowActionsResult, Workflow, WorkflowBody, WorkflowContextValue, WorkflowNextButton, WorkflowPersistenceAdapter, WorkflowPersistenceError, WorkflowPreviousButton, WorkflowProvider, WorkflowSkipButton, WorkflowStepper, WorkflowStore, WorkflowStoreContext, WorkflowStoreState, combineWorkflowDataForConditions, createStepContext, createWorkflowStore, debounce, flattenObject, flow, generateStorageKey, mergePersistedState, persistedToWorkflowState, useCurrentStepIndex, useIsStepPassed, useIsStepVisited, usePassedSteps, usePersistence, useStepDataById, useStepMetadata, useVisitedSteps, useWorkflowActions, useWorkflowAllData, useWorkflowAnalytics, useWorkflowConditions, useWorkflowContext, useWorkflowInitializing, useWorkflowNavigation, useWorkflowNavigationState, useWorkflowState, useWorkflowStepData, useWorkflowStore, useWorkflowStoreApi, useWorkflowSubmission, useWorkflowSubmitState, useWorkflowSubmitting, useWorkflowTransitioning, validatePersistedData, workflowStateToPersisted } from '@rilaykit/workflow';
7
+
8
+ /**
9
+ * Enhanced RilayKit interface with convenience .form() and .flow() methods.
10
+ * Available when using the all-in-one `rilaykit` package.
11
+ */
12
+ interface RilayKit<C extends Record<string, any>> {
13
+ addComponent<NewType extends string, TProps = any>(type: NewType, config: Omit<ComponentConfig<TProps>, 'id' | 'type'>): RilayKit<C & {
14
+ [K in NewType]: TProps;
15
+ }>;
16
+ configure(config: Partial<FormRenderConfig & WorkflowRenderConfig>): RilayKit<C>;
17
+ getComponent<T extends keyof C & string>(id: T): ComponentConfig<C[T]> | undefined;
18
+ getComponent(id: string): ComponentConfig | undefined;
19
+ getAllComponents(): ComponentConfig[];
20
+ hasComponent(id: string): boolean;
21
+ getFormRenderConfig(): FormRenderConfig;
22
+ getWorkflowRenderConfig(): WorkflowRenderConfig;
23
+ getStats(): ReturnType<RilayInstance<C>['getStats']>;
24
+ validate(): string[];
25
+ validateAsync(): Promise<{
26
+ isValid: boolean;
27
+ errors: string[];
28
+ warnings?: string[];
29
+ }>;
30
+ clone(): RilayKit<C>;
31
+ removeComponent(id: string): RilayKit<C>;
32
+ clear(): RilayKit<C>;
33
+ form(formId?: string): form<C>;
34
+ flow(workflowId?: string, name?: string, description?: string): flow;
35
+ }
36
+ /**
37
+ * Enhanced ril with .form() and .flow() convenience methods.
38
+ *
39
+ * Drop-in replacement for `ril` from `@rilaykit/core`.
40
+ * Usage is identical: `ril.create()` — but returned instances
41
+ * also have `.form()` and `.flow()` methods.
42
+ */
43
+ declare const ril: {
44
+ readonly create: <CT extends Record<string, any> = Record<string, never>>() => RilayKit<CT>;
45
+ };
46
+
47
+ export { type RilayKit, ril };
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _createStarExport(obj) { Object.keys(obj) .filter((key) => key !== "default" && key !== "__esModule") .forEach((key) => { if (exports.hasOwnProperty(key)) { return; } Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]}); }); }var _core = require('@rilaykit/core'); _createStarExport(_core);var _forms = require('@rilaykit/forms'); _createStarExport(_forms);var _workflow = require('@rilaykit/workflow');function t(e){return{addComponent(o,r){return t(e.addComponent(o,r))},configure(o){return t(e.configure(o))},getComponent:e.getComponent.bind(e),getAllComponents:e.getAllComponents.bind(e),hasComponent:e.hasComponent.bind(e),getFormRenderConfig:e.getFormRenderConfig.bind(e),getWorkflowRenderConfig:e.getWorkflowRenderConfig.bind(e),getStats:e.getStats.bind(e),validate:e.validate.bind(e),validateAsync:e.validateAsync.bind(e),clone(){return t(e.clone())},removeComponent(o){return t(e.removeComponent(o))},clear(){return t(e.clear())},form(o){return _forms.form.create(e,o)},flow(o,r,n){return _workflow.flow.create(e,o,r,n)}}}var l={create(){return t(_core.ril.create())}};exports.LocalStorageAdapter = _workflow.LocalStorageAdapter; exports.Workflow = _workflow.Workflow; exports.WorkflowBody = _workflow.WorkflowBody; exports.WorkflowNextButton = _workflow.WorkflowNextButton; exports.WorkflowPersistenceError = _workflow.WorkflowPersistenceError; exports.WorkflowPreviousButton = _workflow.WorkflowPreviousButton; exports.WorkflowProvider = _workflow.WorkflowProvider; exports.WorkflowSkipButton = _workflow.WorkflowSkipButton; exports.WorkflowStepper = _workflow.WorkflowStepper; exports.WorkflowStoreContext = _workflow.WorkflowStoreContext; exports.combineWorkflowDataForConditions = _workflow.combineWorkflowDataForConditions; exports.createStepContext = _workflow.createStepContext; exports.createWorkflowStore = _workflow.createWorkflowStore; exports.debounce = _workflow.debounce; exports.flattenObject = _workflow.flattenObject; exports.flow = _workflow.flow; exports.generateStorageKey = _workflow.generateStorageKey; exports.mergePersistedState = _workflow.mergePersistedState; exports.persistedToWorkflowState = _workflow.persistedToWorkflowState; exports.ril = l; exports.useCurrentStepIndex = _workflow.useCurrentStepIndex; exports.useIsStepPassed = _workflow.useIsStepPassed; exports.useIsStepVisited = _workflow.useIsStepVisited; exports.usePassedSteps = _workflow.usePassedSteps; exports.usePersistence = _workflow.usePersistence; exports.useStepDataById = _workflow.useStepDataById; exports.useStepMetadata = _workflow.useStepMetadata; exports.useVisitedSteps = _workflow.useVisitedSteps; exports.useWorkflowActions = _workflow.useWorkflowActions; exports.useWorkflowAllData = _workflow.useWorkflowAllData; exports.useWorkflowAnalytics = _workflow.useWorkflowAnalytics; exports.useWorkflowConditions = _workflow.useWorkflowConditions; exports.useWorkflowContext = _workflow.useWorkflowContext; exports.useWorkflowInitializing = _workflow.useWorkflowInitializing; exports.useWorkflowNavigation = _workflow.useWorkflowNavigation; exports.useWorkflowNavigationState = _workflow.useWorkflowNavigationState; exports.useWorkflowState = _workflow.useWorkflowState; exports.useWorkflowStepData = _workflow.useWorkflowStepData; exports.useWorkflowStore = _workflow.useWorkflowStore; exports.useWorkflowStoreApi = _workflow.useWorkflowStoreApi; exports.useWorkflowSubmission = _workflow.useWorkflowSubmission; exports.useWorkflowSubmitState = _workflow.useWorkflowSubmitState; exports.useWorkflowSubmitting = _workflow.useWorkflowSubmitting; exports.useWorkflowTransitioning = _workflow.useWorkflowTransitioning; exports.validatePersistedData = _workflow.validatePersistedData; exports.workflowStateToPersisted = _workflow.workflowStateToPersisted;
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ export*from"@rilaykit/core";export*from"@rilaykit/forms";import{flow as u}from"@rilaykit/workflow";import{useWorkflowContext as c,Workflow as W,WorkflowBody as R,WorkflowNextButton as S,WorkflowPreviousButton as x,WorkflowProvider as P,WorkflowSkipButton as T,WorkflowStepper as K}from"@rilaykit/workflow";import{createStepContext as v}from"@rilaykit/workflow";import{usePersistence as N,useStepMetadata as I,useWorkflowAnalytics as F,useWorkflowConditions as D,useWorkflowNavigation as O,useWorkflowState as B,useWorkflowSubmission as V}from"@rilaykit/workflow";import{createWorkflowStore as U,useCurrentStepIndex as L,useIsStepPassed as M,useIsStepVisited as j,usePassedSteps as z,useStepDataById as E,useVisitedSteps as q,useWorkflowActions as G,useWorkflowAllData as H,useWorkflowInitializing as J,useWorkflowNavigationState as Q,useWorkflowStepData as X,useWorkflowStore as Y,useWorkflowStoreApi as Z,useWorkflowSubmitState as _,useWorkflowSubmitting as $,useWorkflowTransitioning as ee,WorkflowStoreContext as oe}from"@rilaykit/workflow";import{debounce as re,generateStorageKey as ne,LocalStorageAdapter as ie,mergePersistedState as se,persistedToWorkflowState as ae,validatePersistedData as le,WorkflowPersistenceError as fe,workflowStateToPersisted as pe}from"@rilaykit/workflow";import{combineWorkflowDataForConditions as ge,flattenObject as Ce}from"@rilaykit/workflow";import{ril as i}from"@rilaykit/core";import{form as s}from"@rilaykit/forms";import{flow as a}from"@rilaykit/workflow";function t(e){return{addComponent(o,r){return t(e.addComponent(o,r))},configure(o){return t(e.configure(o))},getComponent:e.getComponent.bind(e),getAllComponents:e.getAllComponents.bind(e),hasComponent:e.hasComponent.bind(e),getFormRenderConfig:e.getFormRenderConfig.bind(e),getWorkflowRenderConfig:e.getWorkflowRenderConfig.bind(e),getStats:e.getStats.bind(e),validate:e.validate.bind(e),validateAsync:e.validateAsync.bind(e),clone(){return t(e.clone())},removeComponent(o){return t(e.removeComponent(o))},clear(){return t(e.clear())},form(o){return s.create(e,o)},flow(o,r,n){return a.create(e,o,r,n)}}}var l={create(){return t(i.create())}};export{ie as LocalStorageAdapter,W as Workflow,R as WorkflowBody,S as WorkflowNextButton,fe as WorkflowPersistenceError,x as WorkflowPreviousButton,P as WorkflowProvider,T as WorkflowSkipButton,K as WorkflowStepper,oe as WorkflowStoreContext,ge as combineWorkflowDataForConditions,v as createStepContext,U as createWorkflowStore,re as debounce,Ce as flattenObject,u as flow,ne as generateStorageKey,se as mergePersistedState,ae as persistedToWorkflowState,l as ril,L as useCurrentStepIndex,M as useIsStepPassed,j as useIsStepVisited,z as usePassedSteps,N as usePersistence,E as useStepDataById,I as useStepMetadata,q as useVisitedSteps,G as useWorkflowActions,H as useWorkflowAllData,F as useWorkflowAnalytics,D as useWorkflowConditions,c as useWorkflowContext,J as useWorkflowInitializing,O as useWorkflowNavigation,Q as useWorkflowNavigationState,B as useWorkflowState,X as useWorkflowStepData,Y as useWorkflowStore,Z as useWorkflowStoreApi,V as useWorkflowSubmission,_ as useWorkflowSubmitState,$ as useWorkflowSubmitting,ee as useWorkflowTransitioning,le as validatePersistedData,pe as workflowStateToPersisted};
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "rilaykit",
3
+ "version": "0.1.5",
4
+ "private": false,
5
+ "description": "All-in-one package for RilayKit — headless forms and workflows for React",
6
+ "main": "dist/index.js",
7
+ "module": "dist/index.mjs",
8
+ "types": "dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.mjs",
13
+ "require": "./dist/index.js"
14
+ }
15
+ },
16
+ "files": ["dist"],
17
+ "publishConfig": {
18
+ "provenance": true
19
+ },
20
+ "scripts": {
21
+ "build": "tsup",
22
+ "dev": "tsup --watch",
23
+ "test": "vitest",
24
+ "test:run": "vitest run",
25
+ "lint": "biome check .",
26
+ "lint:fix": "biome check --write .",
27
+ "type-check": "tsc --noEmit",
28
+ "clean": "rm -rf dist"
29
+ },
30
+ "keywords": ["react", "forms", "workflows", "typescript", "validation", "builder-pattern"],
31
+ "author": "AND YOU CREATE <contact@andyoucreate.com>",
32
+ "license": "MIT",
33
+ "homepage": "https://rilay.dev",
34
+ "repository": {
35
+ "type": "git",
36
+ "url": "https://github.com/andyoucreate/rilaykit.git"
37
+ },
38
+ "bugs": {
39
+ "url": "https://github.com/andyoucreate/rilaykit/issues"
40
+ },
41
+ "dependencies": {
42
+ "@rilaykit/core": "workspace:*",
43
+ "@rilaykit/forms": "workspace:*",
44
+ "@rilaykit/workflow": "workspace:*"
45
+ },
46
+ "peerDependencies": {
47
+ "react": ">=18.0.0",
48
+ "react-dom": ">=18.0.0"
49
+ }
50
+ }