@pipe0/react 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +119 -0
- package/README.md +172 -0
- package/dist/components/compound/pipe-catalog/active-filters.d.mts +26 -0
- package/dist/components/compound/pipe-catalog/active-filters.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/active-filters.mjs +47 -0
- package/dist/components/compound/pipe-catalog/active-filters.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/card.d.mts +30 -0
- package/dist/components/compound/pipe-catalog/card.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/card.mjs +77 -0
- package/dist/components/compound/pipe-catalog/card.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/category-filter.d.mts +30 -0
- package/dist/components/compound/pipe-catalog/category-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/category-filter.mjs +56 -0
- package/dist/components/compound/pipe-catalog/category-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/column-filter.d.mts +40 -0
- package/dist/components/compound/pipe-catalog/column-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/column-filter.mjs +66 -0
- package/dist/components/compound/pipe-catalog/column-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/column-filters.d.mts +16 -0
- package/dist/components/compound/pipe-catalog/column-filters.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/column-filters.mjs +21 -0
- package/dist/components/compound/pipe-catalog/column-filters.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/empty.d.mts +22 -0
- package/dist/components/compound/pipe-catalog/empty.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/empty.mjs +31 -0
- package/dist/components/compound/pipe-catalog/empty.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/index.d.mts +13 -0
- package/dist/components/compound/pipe-catalog/index.mjs +15 -0
- package/dist/components/compound/pipe-catalog/input-field-filter.d.mts +22 -0
- package/dist/components/compound/pipe-catalog/input-field-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/input-field-filter.mjs +22 -0
- package/dist/components/compound/pipe-catalog/input-field-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/list.d.mts +34 -0
- package/dist/components/compound/pipe-catalog/list.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/list.mjs +29 -0
- package/dist/components/compound/pipe-catalog/list.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/output-field-filter.d.mts +22 -0
- package/dist/components/compound/pipe-catalog/output-field-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/output-field-filter.mjs +22 -0
- package/dist/components/compound/pipe-catalog/output-field-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/provider-filter.d.mts +22 -0
- package/dist/components/compound/pipe-catalog/provider-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/provider-filter.mjs +29 -0
- package/dist/components/compound/pipe-catalog/provider-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/root.d.mts +47 -0
- package/dist/components/compound/pipe-catalog/root.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/root.mjs +85 -0
- package/dist/components/compound/pipe-catalog/root.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/search-filter.d.mts +24 -0
- package/dist/components/compound/pipe-catalog/search-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/search-filter.mjs +46 -0
- package/dist/components/compound/pipe-catalog/search-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-catalog/tag-filter.d.mts +22 -0
- package/dist/components/compound/pipe-catalog/tag-filter.d.mts.map +1 -0
- package/dist/components/compound/pipe-catalog/tag-filter.mjs +22 -0
- package/dist/components/compound/pipe-catalog/tag-filter.mjs.map +1 -0
- package/dist/components/compound/pipe-form/content.d.mts +18 -0
- package/dist/components/compound/pipe-form/content.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/content.mjs +45 -0
- package/dist/components/compound/pipe-form/content.mjs.map +1 -0
- package/dist/components/compound/pipe-form/field.d.mts +17 -0
- package/dist/components/compound/pipe-form/field.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/field.mjs +21 -0
- package/dist/components/compound/pipe-form/field.mjs.map +1 -0
- package/dist/components/compound/pipe-form/footer.d.mts +14 -0
- package/dist/components/compound/pipe-form/footer.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/footer.mjs +14 -0
- package/dist/components/compound/pipe-form/footer.mjs.map +1 -0
- package/dist/components/compound/pipe-form/group.d.mts +13 -0
- package/dist/components/compound/pipe-form/group.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/group.mjs +17 -0
- package/dist/components/compound/pipe-form/group.mjs.map +1 -0
- package/dist/components/compound/pipe-form/header.d.mts +14 -0
- package/dist/components/compound/pipe-form/header.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/header.mjs +14 -0
- package/dist/components/compound/pipe-form/header.mjs.map +1 -0
- package/dist/components/compound/pipe-form/index.d.mts +9 -0
- package/dist/components/compound/pipe-form/index.mjs +11 -0
- package/dist/components/compound/pipe-form/root.d.mts +56 -0
- package/dist/components/compound/pipe-form/root.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/root.mjs +98 -0
- package/dist/components/compound/pipe-form/root.mjs.map +1 -0
- package/dist/components/compound/pipe-form/section.d.mts +13 -0
- package/dist/components/compound/pipe-form/section.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/section.mjs +17 -0
- package/dist/components/compound/pipe-form/section.mjs.map +1 -0
- package/dist/components/compound/pipe-form/submit-button.d.mts +9 -0
- package/dist/components/compound/pipe-form/submit-button.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/submit-button.mjs +17 -0
- package/dist/components/compound/pipe-form/submit-button.mjs.map +1 -0
- package/dist/components/compound/pipe-form/title.d.mts +16 -0
- package/dist/components/compound/pipe-form/title.d.mts.map +1 -0
- package/dist/components/compound/pipe-form/title.mjs +14 -0
- package/dist/components/compound/pipe-form/title.mjs.map +1 -0
- package/dist/components/compound/search-catalog/active-filters.d.mts +26 -0
- package/dist/components/compound/search-catalog/active-filters.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/active-filters.mjs +46 -0
- package/dist/components/compound/search-catalog/active-filters.mjs.map +1 -0
- package/dist/components/compound/search-catalog/card.d.mts +30 -0
- package/dist/components/compound/search-catalog/card.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/card.mjs +77 -0
- package/dist/components/compound/search-catalog/card.mjs.map +1 -0
- package/dist/components/compound/search-catalog/category-filter.d.mts +29 -0
- package/dist/components/compound/search-catalog/category-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/category-filter.mjs +51 -0
- package/dist/components/compound/search-catalog/category-filter.mjs.map +1 -0
- package/dist/components/compound/search-catalog/column-filter.d.mts +40 -0
- package/dist/components/compound/search-catalog/column-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/column-filter.mjs +63 -0
- package/dist/components/compound/search-catalog/column-filter.mjs.map +1 -0
- package/dist/components/compound/search-catalog/column-filters.d.mts +15 -0
- package/dist/components/compound/search-catalog/column-filters.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/column-filters.mjs +16 -0
- package/dist/components/compound/search-catalog/column-filters.mjs.map +1 -0
- package/dist/components/compound/search-catalog/empty.d.mts +22 -0
- package/dist/components/compound/search-catalog/empty.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/empty.mjs +31 -0
- package/dist/components/compound/search-catalog/empty.mjs.map +1 -0
- package/dist/components/compound/search-catalog/index.d.mts +12 -0
- package/dist/components/compound/search-catalog/index.mjs +14 -0
- package/dist/components/compound/search-catalog/list.d.mts +19 -0
- package/dist/components/compound/search-catalog/list.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/list.mjs +29 -0
- package/dist/components/compound/search-catalog/list.mjs.map +1 -0
- package/dist/components/compound/search-catalog/output-field-filter.d.mts +22 -0
- package/dist/components/compound/search-catalog/output-field-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/output-field-filter.mjs +22 -0
- package/dist/components/compound/search-catalog/output-field-filter.mjs.map +1 -0
- package/dist/components/compound/search-catalog/provider-filter.d.mts +22 -0
- package/dist/components/compound/search-catalog/provider-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/provider-filter.mjs +29 -0
- package/dist/components/compound/search-catalog/provider-filter.mjs.map +1 -0
- package/dist/components/compound/search-catalog/root.d.mts +33 -0
- package/dist/components/compound/search-catalog/root.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/root.mjs +74 -0
- package/dist/components/compound/search-catalog/root.mjs.map +1 -0
- package/dist/components/compound/search-catalog/search-filter.d.mts +24 -0
- package/dist/components/compound/search-catalog/search-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/search-filter.mjs +46 -0
- package/dist/components/compound/search-catalog/search-filter.mjs.map +1 -0
- package/dist/components/compound/search-catalog/tag-filter.d.mts +22 -0
- package/dist/components/compound/search-catalog/tag-filter.d.mts.map +1 -0
- package/dist/components/compound/search-catalog/tag-filter.mjs +22 -0
- package/dist/components/compound/search-catalog/tag-filter.mjs.map +1 -0
- package/dist/components/compound/search-form/content.d.mts +18 -0
- package/dist/components/compound/search-form/content.d.mts.map +1 -0
- package/dist/components/compound/search-form/content.mjs +45 -0
- package/dist/components/compound/search-form/content.mjs.map +1 -0
- package/dist/components/compound/search-form/field.d.mts +17 -0
- package/dist/components/compound/search-form/field.d.mts.map +1 -0
- package/dist/components/compound/search-form/field.mjs +21 -0
- package/dist/components/compound/search-form/field.mjs.map +1 -0
- package/dist/components/compound/search-form/footer.d.mts +14 -0
- package/dist/components/compound/search-form/footer.d.mts.map +1 -0
- package/dist/components/compound/search-form/footer.mjs +14 -0
- package/dist/components/compound/search-form/footer.mjs.map +1 -0
- package/dist/components/compound/search-form/group.d.mts +13 -0
- package/dist/components/compound/search-form/group.d.mts.map +1 -0
- package/dist/components/compound/search-form/group.mjs +17 -0
- package/dist/components/compound/search-form/group.mjs.map +1 -0
- package/dist/components/compound/search-form/header.d.mts +14 -0
- package/dist/components/compound/search-form/header.d.mts.map +1 -0
- package/dist/components/compound/search-form/header.mjs +14 -0
- package/dist/components/compound/search-form/header.mjs.map +1 -0
- package/dist/components/compound/search-form/index.d.mts +9 -0
- package/dist/components/compound/search-form/index.mjs +11 -0
- package/dist/components/compound/search-form/root.d.mts +45 -0
- package/dist/components/compound/search-form/root.d.mts.map +1 -0
- package/dist/components/compound/search-form/root.mjs +90 -0
- package/dist/components/compound/search-form/root.mjs.map +1 -0
- package/dist/components/compound/search-form/section.d.mts +13 -0
- package/dist/components/compound/search-form/section.d.mts.map +1 -0
- package/dist/components/compound/search-form/section.mjs +17 -0
- package/dist/components/compound/search-form/section.mjs.map +1 -0
- package/dist/components/compound/search-form/submit-button.d.mts +9 -0
- package/dist/components/compound/search-form/submit-button.d.mts.map +1 -0
- package/dist/components/compound/search-form/submit-button.mjs +17 -0
- package/dist/components/compound/search-form/submit-button.mjs.map +1 -0
- package/dist/components/compound/search-form/title.d.mts +16 -0
- package/dist/components/compound/search-form/title.d.mts.map +1 -0
- package/dist/components/compound/search-form/title.mjs +14 -0
- package/dist/components/compound/search-form/title.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/active-filters.d.mts +26 -0
- package/dist/components/compound/searches-catalog/active-filters.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/active-filters.mjs +46 -0
- package/dist/components/compound/searches-catalog/active-filters.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/card.d.mts +22 -0
- package/dist/components/compound/searches-catalog/card.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/card.mjs +70 -0
- package/dist/components/compound/searches-catalog/card.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/category-filter.d.mts +29 -0
- package/dist/components/compound/searches-catalog/category-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/category-filter.mjs +51 -0
- package/dist/components/compound/searches-catalog/category-filter.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/column-filter.d.mts +31 -0
- package/dist/components/compound/searches-catalog/column-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/column-filter.mjs +58 -0
- package/dist/components/compound/searches-catalog/column-filter.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/column-filters.d.mts +15 -0
- package/dist/components/compound/searches-catalog/column-filters.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/column-filters.mjs +16 -0
- package/dist/components/compound/searches-catalog/column-filters.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/empty.d.mts +22 -0
- package/dist/components/compound/searches-catalog/empty.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/empty.mjs +31 -0
- package/dist/components/compound/searches-catalog/empty.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/index.d.mts +12 -0
- package/dist/components/compound/searches-catalog/index.mjs +14 -0
- package/dist/components/compound/searches-catalog/list.d.mts +19 -0
- package/dist/components/compound/searches-catalog/list.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/list.mjs +29 -0
- package/dist/components/compound/searches-catalog/list.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/output-field-filter.d.mts +22 -0
- package/dist/components/compound/searches-catalog/output-field-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/output-field-filter.mjs +22 -0
- package/dist/components/compound/searches-catalog/output-field-filter.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/provider-filter.d.mts +22 -0
- package/dist/components/compound/searches-catalog/provider-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/provider-filter.mjs +29 -0
- package/dist/components/compound/searches-catalog/provider-filter.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/root.d.mts +33 -0
- package/dist/components/compound/searches-catalog/root.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/root.mjs +74 -0
- package/dist/components/compound/searches-catalog/root.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/search-filter.d.mts +24 -0
- package/dist/components/compound/searches-catalog/search-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/search-filter.mjs +46 -0
- package/dist/components/compound/searches-catalog/search-filter.mjs.map +1 -0
- package/dist/components/compound/searches-catalog/tag-filter.d.mts +22 -0
- package/dist/components/compound/searches-catalog/tag-filter.d.mts.map +1 -0
- package/dist/components/compound/searches-catalog/tag-filter.mjs +22 -0
- package/dist/components/compound/searches-catalog/tag-filter.mjs.map +1 -0
- package/dist/components/defaults/adapters/async-include-exclude-select-input.mjs +32 -0
- package/dist/components/defaults/adapters/async-include-exclude-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/async-multi-select-input.mjs +26 -0
- package/dist/components/defaults/adapters/async-multi-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/boolean-input.mjs +82 -0
- package/dist/components/defaults/adapters/boolean-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/connector-input.mjs +94 -0
- package/dist/components/defaults/adapters/connector-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/context-select-input.mjs +74 -0
- package/dist/components/defaults/adapters/context-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/cursor-pagination-input.mjs +29 -0
- package/dist/components/defaults/adapters/cursor-pagination-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/date-range-input.mjs +53 -0
- package/dist/components/defaults/adapters/date-range-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/exact-range-input.mjs +75 -0
- package/dist/components/defaults/adapters/exact-range-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/fields-select-input.mjs +25 -0
- package/dist/components/defaults/adapters/fields-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/include-exclude-input.mjs +33 -0
- package/dist/components/defaults/adapters/include-exclude-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/include-exclude-select-input.mjs +36 -0
- package/dist/components/defaults/adapters/include-exclude-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/index.d.mts +11 -0
- package/dist/components/defaults/adapters/index.d.mts.map +1 -0
- package/dist/components/defaults/adapters/index.mjs +73 -0
- package/dist/components/defaults/adapters/index.mjs.map +1 -0
- package/dist/components/defaults/adapters/int-input.mjs +16 -0
- package/dist/components/defaults/adapters/int-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/json-extraction-input.mjs +333 -0
- package/dist/components/defaults/adapters/json-extraction-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/json-schema-input.mjs +30 -0
- package/dist/components/defaults/adapters/json-schema-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/key-value-list-input.mjs +100 -0
- package/dist/components/defaults/adapters/key-value-list-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/min-max-int-input.mjs +65 -0
- package/dist/components/defaults/adapters/min-max-int-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/multi-create-input.mjs +32 -0
- package/dist/components/defaults/adapters/multi-create-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/multi-select-input.mjs +26 -0
- package/dist/components/defaults/adapters/multi-select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/number-input.mjs +15 -0
- package/dist/components/defaults/adapters/number-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/ordered-multi-create-input.mjs +43 -0
- package/dist/components/defaults/adapters/ordered-multi-create-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/output-field-input.mjs +37 -0
- package/dist/components/defaults/adapters/output-field-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/pipes-trigger-input.mjs +381 -0
- package/dist/components/defaults/adapters/pipes-trigger-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/prompt-input.mjs +208 -0
- package/dist/components/defaults/adapters/prompt-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/providers-input.mjs +23 -0
- package/dist/components/defaults/adapters/providers-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/range-input.mjs +61 -0
- package/dist/components/defaults/adapters/range-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/select-input.mjs +54 -0
- package/dist/components/defaults/adapters/select-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/tagged-text-input.mjs +154 -0
- package/dist/components/defaults/adapters/tagged-text-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/template-input.mjs +34 -0
- package/dist/components/defaults/adapters/template-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/text-input.mjs +18 -0
- package/dist/components/defaults/adapters/text-input.mjs.map +1 -0
- package/dist/components/defaults/adapters/textarea-input.mjs +17 -0
- package/dist/components/defaults/adapters/textarea-input.mjs.map +1 -0
- package/dist/components/defaults/catalog/active-filter-pill.mjs +30 -0
- package/dist/components/defaults/catalog/active-filter-pill.mjs.map +1 -0
- package/dist/components/defaults/catalog/card-derived.d.mts +98 -0
- package/dist/components/defaults/catalog/card-derived.d.mts.map +1 -0
- package/dist/components/defaults/catalog/card-derived.mjs +172 -0
- package/dist/components/defaults/catalog/card-derived.mjs.map +1 -0
- package/dist/components/defaults/catalog/card-primitives.d.mts +81 -0
- package/dist/components/defaults/catalog/card-primitives.d.mts.map +1 -0
- package/dist/components/defaults/catalog/card-primitives.mjs +108 -0
- package/dist/components/defaults/catalog/card-primitives.mjs.map +1 -0
- package/dist/components/defaults/catalog/category-filter.d.mts +13 -0
- package/dist/components/defaults/catalog/category-filter.d.mts.map +1 -0
- package/dist/components/defaults/catalog/category-filter.mjs +28 -0
- package/dist/components/defaults/catalog/category-filter.mjs.map +1 -0
- package/dist/components/defaults/catalog/category-section.d.mts +39 -0
- package/dist/components/defaults/catalog/category-section.d.mts.map +1 -0
- package/dist/components/defaults/catalog/category-section.mjs +59 -0
- package/dist/components/defaults/catalog/category-section.mjs.map +1 -0
- package/dist/components/defaults/catalog/empty-state.mjs +20 -0
- package/dist/components/defaults/catalog/empty-state.mjs.map +1 -0
- package/dist/components/defaults/catalog/filter-select.d.mts +13 -0
- package/dist/components/defaults/catalog/filter-select.d.mts.map +1 -0
- package/dist/components/defaults/catalog/filter-select.mjs +45 -0
- package/dist/components/defaults/catalog/filter-select.mjs.map +1 -0
- package/dist/components/defaults/catalog/layout.mjs +53 -0
- package/dist/components/defaults/catalog/layout.mjs.map +1 -0
- package/dist/components/defaults/catalog/provider-avatars.d.mts +37 -0
- package/dist/components/defaults/catalog/provider-avatars.d.mts.map +1 -0
- package/dist/components/defaults/catalog/provider-avatars.mjs +98 -0
- package/dist/components/defaults/catalog/provider-avatars.mjs.map +1 -0
- package/dist/components/defaults/field-section-enumeration.mjs +32 -0
- package/dist/components/defaults/field-section-enumeration.mjs.map +1 -0
- package/dist/components/defaults/layout/field-wrapper.d.mts +13 -0
- package/dist/components/defaults/layout/field-wrapper.d.mts.map +1 -0
- package/dist/components/defaults/layout/field-wrapper.mjs +67 -0
- package/dist/components/defaults/layout/field-wrapper.mjs.map +1 -0
- package/dist/components/defaults/layout/form.mjs +21 -0
- package/dist/components/defaults/layout/form.mjs.map +1 -0
- package/dist/components/defaults/layout/group.d.mts +16 -0
- package/dist/components/defaults/layout/group.d.mts.map +1 -0
- package/dist/components/defaults/layout/group.mjs +87 -0
- package/dist/components/defaults/layout/group.mjs.map +1 -0
- package/dist/components/defaults/layout/section.d.mts +14 -0
- package/dist/components/defaults/layout/section.d.mts.map +1 -0
- package/dist/components/defaults/layout/section.mjs +39 -0
- package/dist/components/defaults/layout/section.mjs.map +1 -0
- package/dist/components/defaults/layout/submit-button.d.mts +9 -0
- package/dist/components/defaults/layout/submit-button.d.mts.map +1 -0
- package/dist/components/defaults/layout/submit-button.mjs +23 -0
- package/dist/components/defaults/layout/submit-button.mjs.map +1 -0
- package/dist/components/defaults/toggle-advanced-button.mjs +29 -0
- package/dist/components/defaults/toggle-advanced-button.mjs.map +1 -0
- package/dist/components/field-renderer.d.mts +14 -0
- package/dist/components/field-renderer.d.mts.map +1 -0
- package/dist/components/field-renderer.mjs +21 -0
- package/dist/components/field-renderer.mjs.map +1 -0
- package/dist/components/hover-info.mjs +30 -0
- package/dist/components/hover-info.mjs.map +1 -0
- package/dist/components/internal/LiquidEditor/ChipEditPopover.mjs +319 -0
- package/dist/components/internal/LiquidEditor/ChipEditPopover.mjs.map +1 -0
- package/dist/components/internal/LiquidEditor/LiquidEditor.mjs +208 -0
- package/dist/components/internal/LiquidEditor/LiquidEditor.mjs.map +1 -0
- package/dist/components/internal/LiquidEditor/UnifiedReferencePicker.mjs +240 -0
- package/dist/components/internal/LiquidEditor/UnifiedReferencePicker.mjs.map +1 -0
- package/dist/components/internal/combobox/include-exclude-combobox.mjs +368 -0
- package/dist/components/internal/combobox/include-exclude-combobox.mjs.map +1 -0
- package/dist/components/internal/combobox/suggest-combobox.mjs +294 -0
- package/dist/components/internal/combobox/suggest-combobox.mjs.map +1 -0
- package/dist/components/internal/field-legend.mjs +37 -0
- package/dist/components/internal/field-legend.mjs.map +1 -0
- package/dist/components/internal/form-level-errors.mjs +71 -0
- package/dist/components/internal/form-level-errors.mjs.map +1 -0
- package/dist/components/internal/icons.mjs +131 -0
- package/dist/components/internal/icons.mjs.map +1 -0
- package/dist/components/internal/multi-select-popover-trigger.mjs +26 -0
- package/dist/components/internal/multi-select-popover-trigger.mjs.map +1 -0
- package/dist/components/internal/schema-editor/SchemaEditor.mjs +468 -0
- package/dist/components/internal/schema-editor/SchemaEditor.mjs.map +1 -0
- package/dist/components/internal/schema-editor/generate-schema-rows.mjs +374 -0
- package/dist/components/internal/schema-editor/generate-schema-rows.mjs.map +1 -0
- package/dist/components/internal/schema-editor/schema-editor-context.mjs +32 -0
- package/dist/components/internal/schema-editor/schema-editor-context.mjs.map +1 -0
- package/dist/components/internal/schema-editor/schema-utils.mjs +249 -0
- package/dist/components/internal/schema-editor/schema-utils.mjs.map +1 -0
- package/dist/components/internal/suggestion-menu/suggestion-menu-utils.mjs +12 -0
- package/dist/components/internal/suggestion-menu/suggestion-menu-utils.mjs.map +1 -0
- package/dist/components/internal/suggestion-menu/suggestion-menu.mjs +151 -0
- package/dist/components/internal/suggestion-menu/suggestion-menu.mjs.map +1 -0
- package/dist/components/internal/tag-chip-decoration.mjs +180 -0
- package/dist/components/internal/tag-chip-decoration.mjs.map +1 -0
- package/dist/components/rich-text.mjs +42 -0
- package/dist/components/rich-text.mjs.map +1 -0
- package/dist/components/ui/badge.mjs +32 -0
- package/dist/components/ui/badge.mjs.map +1 -0
- package/dist/components/ui/button.d.mts +19 -0
- package/dist/components/ui/button.d.mts.map +1 -0
- package/dist/components/ui/button.mjs +47 -0
- package/dist/components/ui/button.mjs.map +1 -0
- package/dist/components/ui/combobox.mjs +103 -0
- package/dist/components/ui/combobox.mjs.map +1 -0
- package/dist/components/ui/input-group.mjs +30 -0
- package/dist/components/ui/input-group.mjs.map +1 -0
- package/dist/components/ui/input.mjs +17 -0
- package/dist/components/ui/input.mjs.map +1 -0
- package/dist/components/ui/label.mjs +17 -0
- package/dist/components/ui/label.mjs.map +1 -0
- package/dist/components/ui/popover.mjs +40 -0
- package/dist/components/ui/popover.mjs.map +1 -0
- package/dist/components/ui/select.mjs +92 -0
- package/dist/components/ui/select.mjs.map +1 -0
- package/dist/components/ui/switch.mjs +21 -0
- package/dist/components/ui/switch.mjs.map +1 -0
- package/dist/components/ui/table.mjs +56 -0
- package/dist/components/ui/table.mjs.map +1 -0
- package/dist/components/ui/textarea.mjs +15 -0
- package/dist/components/ui/textarea.mjs.map +1 -0
- package/dist/components/ui/tooltip.mjs +48 -0
- package/dist/components/ui/tooltip.mjs.map +1 -0
- package/dist/context/catalog-card-context.mjs +31 -0
- package/dist/context/catalog-card-context.mjs.map +1 -0
- package/dist/context/catalog-config-context.d.mts +43 -0
- package/dist/context/catalog-config-context.d.mts.map +1 -0
- package/dist/context/catalog-config-context.mjs +48 -0
- package/dist/context/catalog-config-context.mjs.map +1 -0
- package/dist/context/form-context.mjs +11 -0
- package/dist/context/form-context.mjs.map +1 -0
- package/dist/context/form-customization-context.d.mts +71 -0
- package/dist/context/form-customization-context.d.mts.map +1 -0
- package/dist/context/form-customization-context.mjs +114 -0
- package/dist/context/form-customization-context.mjs.map +1 -0
- package/dist/context/form-provider.d.mts +41 -0
- package/dist/context/form-provider.d.mts.map +1 -0
- package/dist/context/form-provider.mjs +53 -0
- package/dist/context/form-provider.mjs.map +1 -0
- package/dist/context/pipe-catalog-card-context.d.mts +17 -0
- package/dist/context/pipe-catalog-card-context.d.mts.map +1 -0
- package/dist/context/pipe-catalog-card-context.mjs +13 -0
- package/dist/context/pipe-catalog-card-context.mjs.map +1 -0
- package/dist/context/pipe-catalog-context.d.mts +26 -0
- package/dist/context/pipe-catalog-context.d.mts.map +1 -0
- package/dist/context/pipe-catalog-context.mjs +13 -0
- package/dist/context/pipe-catalog-context.mjs.map +1 -0
- package/dist/context/pipe-form-context.d.mts +25 -0
- package/dist/context/pipe-form-context.d.mts.map +1 -0
- package/dist/context/pipe-form-context.mjs +13 -0
- package/dist/context/pipe-form-context.mjs.map +1 -0
- package/dist/context/portal-container-context.d.mts +5 -0
- package/dist/context/portal-container-context.d.mts.map +1 -0
- package/dist/context/portal-container-context.mjs +15 -0
- package/dist/context/portal-container-context.mjs.map +1 -0
- package/dist/context/search-catalog-card-context.d.mts +16 -0
- package/dist/context/search-catalog-card-context.d.mts.map +1 -0
- package/dist/context/search-catalog-card-context.mjs +13 -0
- package/dist/context/search-catalog-card-context.mjs.map +1 -0
- package/dist/context/search-catalog-context.d.mts +20 -0
- package/dist/context/search-catalog-context.d.mts.map +1 -0
- package/dist/context/search-catalog-context.mjs +13 -0
- package/dist/context/search-catalog-context.mjs.map +1 -0
- package/dist/context/search-form-context.d.mts +25 -0
- package/dist/context/search-form-context.d.mts.map +1 -0
- package/dist/context/search-form-context.mjs +13 -0
- package/dist/context/search-form-context.mjs.map +1 -0
- package/dist/context/searches-catalog-card-context.d.mts +16 -0
- package/dist/context/searches-catalog-card-context.d.mts.map +1 -0
- package/dist/context/searches-catalog-card-context.mjs +13 -0
- package/dist/context/searches-catalog-card-context.mjs.map +1 -0
- package/dist/context/searches-catalog-context.d.mts +20 -0
- package/dist/context/searches-catalog-context.d.mts.map +1 -0
- package/dist/context/searches-catalog-context.mjs +13 -0
- package/dist/context/searches-catalog-context.mjs.map +1 -0
- package/dist/hooks/use-debounce.mjs +28 -0
- package/dist/hooks/use-debounce.mjs.map +1 -0
- package/dist/hooks/use-debounced-fn.mjs +47 -0
- package/dist/hooks/use-debounced-fn.mjs.map +1 -0
- package/dist/hooks/use-disclosure.mjs +35 -0
- package/dist/hooks/use-disclosure.mjs.map +1 -0
- package/dist/hooks/use-field-error.d.mts +11 -0
- package/dist/hooks/use-field-error.d.mts.map +1 -0
- package/dist/hooks/use-field-error.mjs +23 -0
- package/dist/hooks/use-field-error.mjs.map +1 -0
- package/dist/hooks/use-floating-element.mjs +45 -0
- package/dist/hooks/use-floating-element.mjs.map +1 -0
- package/dist/hooks/use-form-core.d.mts +16 -0
- package/dist/hooks/use-form-core.d.mts.map +1 -0
- package/dist/hooks/use-form-core.mjs +241 -0
- package/dist/hooks/use-form-core.mjs.map +1 -0
- package/dist/hooks/use-jsonata-preview.mjs +38 -0
- package/dist/hooks/use-jsonata-preview.mjs.map +1 -0
- package/dist/hooks/use-menu-navigation.mjs +86 -0
- package/dist/hooks/use-menu-navigation.mjs.map +1 -0
- package/dist/hooks/use-pipe-catalog-table.d.mts +47 -0
- package/dist/hooks/use-pipe-catalog-table.d.mts.map +1 -0
- package/dist/hooks/use-pipe-catalog-table.mjs +170 -0
- package/dist/hooks/use-pipe-catalog-table.mjs.map +1 -0
- package/dist/hooks/use-pipe-form.d.mts +31 -0
- package/dist/hooks/use-pipe-form.d.mts.map +1 -0
- package/dist/hooks/use-pipe-form.mjs +65 -0
- package/dist/hooks/use-pipe-form.mjs.map +1 -0
- package/dist/hooks/use-search-catalog-table.d.mts +40 -0
- package/dist/hooks/use-search-catalog-table.d.mts.map +1 -0
- package/dist/hooks/use-search-catalog-table.mjs +161 -0
- package/dist/hooks/use-search-catalog-table.mjs.map +1 -0
- package/dist/hooks/use-search-form.d.mts +17 -0
- package/dist/hooks/use-search-form.d.mts.map +1 -0
- package/dist/hooks/use-search-form.mjs +58 -0
- package/dist/hooks/use-search-form.mjs.map +1 -0
- package/dist/hooks/use-searches-catalog-table.d.mts +40 -0
- package/dist/hooks/use-searches-catalog-table.d.mts.map +1 -0
- package/dist/hooks/use-searches-catalog-table.mjs +161 -0
- package/dist/hooks/use-searches-catalog-table.mjs.map +1 -0
- package/dist/index.d.mts +96 -0
- package/dist/index.mjs +98 -0
- package/dist/lib/utils.mjs +11 -0
- package/dist/lib/utils.mjs.map +1 -0
- package/dist/styles/pipe0-form.css +3785 -0
- package/dist/types/adapters.d.mts +107 -0
- package/dist/types/adapters.d.mts.map +1 -0
- package/dist/types/catalog-adapters.d.mts +122 -0
- package/dist/types/catalog-adapters.d.mts.map +1 -0
- package/dist/types/field-handle.d.mts +3 -0
- package/dist/types/field-props.d.mts +285 -0
- package/dist/types/field-props.d.mts.map +1 -0
- package/dist/types/form-customization.d.mts +25 -0
- package/dist/types/form-customization.d.mts.map +1 -0
- package/dist/types/form-handle.d.mts +23 -0
- package/dist/types/form-handle.d.mts.map +1 -0
- package/dist/utils/build-section-handlers.mjs +419 -0
- package/dist/utils/build-section-handlers.mjs.map +1 -0
- package/dist/utils/catalog-helpers.d.mts +12 -0
- package/dist/utils/catalog-helpers.d.mts.map +1 -0
- package/dist/utils/catalog-helpers.mjs +35 -0
- package/dist/utils/catalog-helpers.mjs.map +1 -0
- package/dist/utils/generate-random-string.mjs +11 -0
- package/dist/utils/generate-random-string.mjs.map +1 -0
- package/dist/utils/merge-form-stores.mjs +14 -0
- package/dist/utils/merge-form-stores.mjs.map +1 -0
- package/dist/utils/object-path.mjs +72 -0
- package/dist/utils/object-path.mjs.map +1 -0
- package/dist/utils/render-slot.d.mts +44 -0
- package/dist/utils/render-slot.d.mts.map +1 -0
- package/dist/utils/render-slot.mjs +30 -0
- package/dist/utils/render-slot.mjs.map +1 -0
- package/dist/widgets/avatar-group.d.mts +36 -0
- package/dist/widgets/avatar-group.d.mts.map +1 -0
- package/dist/widgets/avatar-group.mjs +114 -0
- package/dist/widgets/avatar-group.mjs.map +1 -0
- package/dist/widgets/emoji-glyph.d.mts +11 -0
- package/dist/widgets/emoji-glyph.d.mts.map +1 -0
- package/dist/widgets/emoji-glyph.mjs +13 -0
- package/dist/widgets/emoji-glyph.mjs.map +1 -0
- package/dist/widgets/field-type-badge.d.mts +13 -0
- package/dist/widgets/field-type-badge.d.mts.map +1 -0
- package/dist/widgets/field-type-badge.mjs +30 -0
- package/dist/widgets/field-type-badge.mjs.map +1 -0
- package/dist/widgets/icon-glyph.d.mts +16 -0
- package/dist/widgets/icon-glyph.d.mts.map +1 -0
- package/dist/widgets/icon-glyph.mjs +59 -0
- package/dist/widgets/icon-glyph.mjs.map +1 -0
- package/dist/widgets/index.d.mts +9 -0
- package/dist/widgets/index.mjs +11 -0
- package/dist/widgets/logo-url.d.mts +17 -0
- package/dist/widgets/logo-url.d.mts.map +1 -0
- package/dist/widgets/logo-url.mjs +17 -0
- package/dist/widgets/logo-url.mjs.map +1 -0
- package/dist/widgets/pricing-badge.d.mts +11 -0
- package/dist/widgets/pricing-badge.d.mts.map +1 -0
- package/dist/widgets/pricing-badge.mjs +13 -0
- package/dist/widgets/pricing-badge.mjs.map +1 -0
- package/dist/widgets/provider-logo.d.mts +16 -0
- package/dist/widgets/provider-logo.d.mts.map +1 -0
- package/dist/widgets/provider-logo.mjs +20 -0
- package/dist/widgets/provider-logo.mjs.map +1 -0
- package/dist/widgets/widget-strip.d.mts +16 -0
- package/dist/widgets/widget-strip.d.mts.map +1 -0
- package/dist/widgets/widget-strip.mjs +42 -0
- package/dist/widgets/widget-strip.mjs.map +1 -0
- package/dist/widgets/widget-view.d.mts +14 -0
- package/dist/widgets/widget-view.d.mts.map +1 -0
- package/dist/widgets/widget-view.mjs +36 -0
- package/dist/widgets/widget-view.mjs.map +1 -0
- package/package.json +82 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { RenderProp } from "../../../utils/render-slot.mjs";
|
|
2
|
+
import { CatalogClassNames, CatalogComponentOverrides, SearchesCardData } from "../../../types/catalog-adapters.mjs";
|
|
3
|
+
import { UseSearchesCatalogTableReturn } from "../../../hooks/use-searches-catalog-table.mjs";
|
|
4
|
+
import { ComponentProps, ReactNode, SyntheticEvent } from "react";
|
|
5
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
import { CatalogFilter } from "@pipe0/base";
|
|
7
|
+
import { ColumnFilter } from "@tanstack/react-table";
|
|
8
|
+
|
|
9
|
+
//#region src/components/compound/searches-catalog/root.d.ts
|
|
10
|
+
interface CustomizationProps {
|
|
11
|
+
classNames?: CatalogClassNames;
|
|
12
|
+
components?: CatalogComponentOverrides;
|
|
13
|
+
className?: string;
|
|
14
|
+
render?: RenderProp<ComponentProps<"div">, Record<never, never>>;
|
|
15
|
+
}
|
|
16
|
+
interface SelectionProps {
|
|
17
|
+
/** Fires on click / keyboard activation of any `<SearchesCatalogCard>`. */
|
|
18
|
+
onSelectSearches?: (searches: SearchesCardData, e: SyntheticEvent) => void;
|
|
19
|
+
}
|
|
20
|
+
interface SearchesCatalogInstanceProps extends CustomizationProps, SelectionProps {
|
|
21
|
+
context: UseSearchesCatalogTableReturn;
|
|
22
|
+
children?: ReactNode;
|
|
23
|
+
}
|
|
24
|
+
interface SearchesCatalogLegacyProps extends CustomizationProps, SelectionProps {
|
|
25
|
+
filter?: CatalogFilter;
|
|
26
|
+
initialColumnFilters?: ColumnFilter[];
|
|
27
|
+
children?: ReactNode;
|
|
28
|
+
}
|
|
29
|
+
type SearchesCatalogProps = SearchesCatalogInstanceProps | SearchesCatalogLegacyProps;
|
|
30
|
+
declare function SearchesCatalog(props: SearchesCatalogProps): _$react_jsx_runtime0.JSX.Element;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { SearchesCatalog, SearchesCatalogInstanceProps, SearchesCatalogLegacyProps, SearchesCatalogProps };
|
|
33
|
+
//# sourceMappingURL=root.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.d.mts","names":[],"sources":["../../../../src/components/compound/searches-catalog/root.tsx"],"mappings":";;;;;;;;;UA+BU,kBAAA;EACR,UAAA,GAAa,iBAAA;EACb,UAAA,GAAa,yBAAA;EACb,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,MAAA;AAAA;AAAA,UAGnC,cAAA;EALK;EAOb,gBAAA,IAAoB,QAAA,EAAU,gBAAA,EAAkB,CAAA,EAAG,cAAA;AAAA;AAAA,UAGpC,4BAAA,SAAqC,kBAAA,EAAoB,cAAA;EACxE,OAAA,EAAS,6BAAA;EACT,QAAA,GAAW,SAAA;AAAA;AAAA,UAGI,0BAAA,SAAmC,kBAAA,EAAoB,cAAA;EACtE,MAAA,GAAS,aAAA;EACT,oBAAA,GAAuB,YAAA;EACvB,QAAA,GAAW,SAAA;AAAA;AAAA,KAGD,oBAAA,GAAuB,4BAAA,GAA+B,0BAAA;AAAA,iBAElD,eAAA,CAAgB,KAAA,EAAO,oBAAA,GAAoB,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { CatalogProvider, CatalogRoot, useCatalogConfig } from "../../../context/catalog-config-context.mjs";
|
|
2
|
+
import { SearchesCatalogContext } from "../../../context/searches-catalog-context.mjs";
|
|
3
|
+
import { DefaultCatalogRoot } from "../../defaults/catalog/layout.mjs";
|
|
4
|
+
import { SearchesCatalogActiveFilters } from "./active-filters.mjs";
|
|
5
|
+
import { SearchesCatalogCategoryFilter } from "./category-filter.mjs";
|
|
6
|
+
import { SearchesCatalogColumnFilters } from "./column-filters.mjs";
|
|
7
|
+
import { SearchesCatalogEmpty } from "./empty.mjs";
|
|
8
|
+
import { SearchesCatalogList } from "./list.mjs";
|
|
9
|
+
import { useSearchesCatalogTable } from "../../../hooks/use-searches-catalog-table.mjs";
|
|
10
|
+
import { SearchesCatalogSearchFilter } from "./search-filter.mjs";
|
|
11
|
+
import { useMemo, useState } from "react";
|
|
12
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
|
|
14
|
+
//#region src/components/compound/searches-catalog/root.tsx
|
|
15
|
+
function SearchesCatalog(props) {
|
|
16
|
+
if ("context" in props) return /* @__PURE__ */ jsx(SearchesCatalogWithContext, { ...props });
|
|
17
|
+
return /* @__PURE__ */ jsx(SearchesCatalogLegacy, { ...props });
|
|
18
|
+
}
|
|
19
|
+
function SearchesCatalogLegacy({ filter, initialColumnFilters, ...rest }) {
|
|
20
|
+
return /* @__PURE__ */ jsx(SearchesCatalogWithContext, {
|
|
21
|
+
context: useSearchesCatalogTable({
|
|
22
|
+
filter,
|
|
23
|
+
initialColumnFilters
|
|
24
|
+
}),
|
|
25
|
+
...rest
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function SearchesCatalogWithContext({ context, children, className, classNames, components, onSelectSearches, render }) {
|
|
29
|
+
const hasLocalOverrides = classNames || components;
|
|
30
|
+
const [expandedCardId, setExpandedCardId] = useState(null);
|
|
31
|
+
const value = useMemo(() => ({
|
|
32
|
+
...context,
|
|
33
|
+
onSelectCard: onSelectSearches,
|
|
34
|
+
expandedCardId,
|
|
35
|
+
setExpandedCardId
|
|
36
|
+
}), [
|
|
37
|
+
context,
|
|
38
|
+
onSelectSearches,
|
|
39
|
+
expandedCardId
|
|
40
|
+
]);
|
|
41
|
+
const inner = /* @__PURE__ */ jsx(SearchesCatalogContext.Provider, {
|
|
42
|
+
value,
|
|
43
|
+
children: /* @__PURE__ */ jsx(SearchesCatalogShell, {
|
|
44
|
+
className,
|
|
45
|
+
render,
|
|
46
|
+
children
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
if (hasLocalOverrides) return /* @__PURE__ */ jsx(CatalogRoot, { children: /* @__PURE__ */ jsx(CatalogProvider, {
|
|
50
|
+
classNames,
|
|
51
|
+
components,
|
|
52
|
+
children: inner
|
|
53
|
+
}) });
|
|
54
|
+
return /* @__PURE__ */ jsx(CatalogRoot, { children: inner });
|
|
55
|
+
}
|
|
56
|
+
function SearchesCatalogShell({ children, className, render }) {
|
|
57
|
+
useCatalogConfig();
|
|
58
|
+
return /* @__PURE__ */ jsx(DefaultCatalogRoot, {
|
|
59
|
+
className,
|
|
60
|
+
render,
|
|
61
|
+
children: children !== void 0 ? children : /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
62
|
+
/* @__PURE__ */ jsx(SearchesCatalogSearchFilter, {}),
|
|
63
|
+
/* @__PURE__ */ jsx(SearchesCatalogCategoryFilter, {}),
|
|
64
|
+
/* @__PURE__ */ jsx(SearchesCatalogColumnFilters, {}),
|
|
65
|
+
/* @__PURE__ */ jsx(SearchesCatalogActiveFilters, {}),
|
|
66
|
+
/* @__PURE__ */ jsx(SearchesCatalogList, {}),
|
|
67
|
+
/* @__PURE__ */ jsx(SearchesCatalogEmpty, {})
|
|
68
|
+
] })
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
//#endregion
|
|
73
|
+
export { SearchesCatalog };
|
|
74
|
+
//# sourceMappingURL=root.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.mjs","names":[],"sources":["../../../../src/components/compound/searches-catalog/root.tsx"],"sourcesContent":["import type { CatalogFilter } from \"@pipe0/base\";\nimport type { ColumnFilter } from \"@tanstack/react-table\";\nimport type { ComponentProps, ReactNode, SyntheticEvent } from \"react\";\nimport { useMemo, useState } from \"react\";\nimport {\n CatalogProvider,\n CatalogRoot,\n useCatalogConfig,\n} from \"../../../context/catalog-config-context.js\";\nimport {\n SearchesCatalogContext,\n type SearchesCatalogContextValue,\n} from \"../../../context/searches-catalog-context.js\";\nimport {\n type UseSearchesCatalogTableReturn,\n useSearchesCatalogTable,\n} from \"../../../hooks/use-searches-catalog-table.js\";\nimport type {\n CatalogClassNames,\n CatalogComponentOverrides,\n SearchesCardData,\n} from \"../../../types/catalog-adapters.js\";\nimport { type RenderProp, renderSlot } from \"../../../utils/render-slot.js\";\nimport { DefaultCatalogRoot } from \"../../defaults/catalog/layout.js\";\nimport { SearchesCatalogActiveFilters } from \"./active-filters.js\";\nimport { SearchesCatalogCategoryFilter } from \"./category-filter.js\";\nimport { SearchesCatalogColumnFilters } from \"./column-filters.js\";\nimport { SearchesCatalogEmpty } from \"./empty.js\";\nimport { SearchesCatalogList } from \"./list.js\";\nimport { SearchesCatalogSearchFilter } from \"./search-filter.js\";\n\ninterface CustomizationProps {\n classNames?: CatalogClassNames;\n components?: CatalogComponentOverrides;\n className?: string;\n render?: RenderProp<ComponentProps<\"div\">, Record<never, never>>;\n}\n\ninterface SelectionProps {\n /** Fires on click / keyboard activation of any `<SearchesCatalogCard>`. */\n onSelectSearches?: (searches: SearchesCardData, e: SyntheticEvent) => void;\n}\n\nexport interface SearchesCatalogInstanceProps extends CustomizationProps, SelectionProps {\n context: UseSearchesCatalogTableReturn;\n children?: ReactNode;\n}\n\nexport interface SearchesCatalogLegacyProps extends CustomizationProps, SelectionProps {\n filter?: CatalogFilter;\n initialColumnFilters?: ColumnFilter[];\n children?: ReactNode;\n}\n\nexport type SearchesCatalogProps = SearchesCatalogInstanceProps | SearchesCatalogLegacyProps;\n\nexport function SearchesCatalog(props: SearchesCatalogProps) {\n if (\"context\" in props) {\n return <SearchesCatalogWithContext {...props} />;\n }\n return <SearchesCatalogLegacy {...props} />;\n}\n\nfunction SearchesCatalogLegacy({\n filter,\n initialColumnFilters,\n ...rest\n}: SearchesCatalogLegacyProps) {\n const context = useSearchesCatalogTable({ filter, initialColumnFilters });\n return <SearchesCatalogWithContext context={context} {...rest} />;\n}\n\nfunction SearchesCatalogWithContext({\n context,\n children,\n className,\n classNames,\n components,\n onSelectSearches,\n render,\n}: SearchesCatalogInstanceProps) {\n const hasLocalOverrides = classNames || components;\n const [expandedCardId, setExpandedCardId] = useState<string | null>(null);\n\n const value = useMemo<SearchesCatalogContextValue>(\n () => ({\n ...context,\n onSelectCard: onSelectSearches,\n expandedCardId,\n setExpandedCardId,\n }),\n [context, onSelectSearches, expandedCardId],\n );\n\n const inner = (\n <SearchesCatalogContext.Provider value={value}>\n <SearchesCatalogShell className={className} render={render}>\n {children}\n </SearchesCatalogShell>\n </SearchesCatalogContext.Provider>\n );\n if (hasLocalOverrides) {\n return (\n <CatalogRoot>\n <CatalogProvider classNames={classNames} components={components}>\n {inner}\n </CatalogProvider>\n </CatalogRoot>\n );\n }\n return <CatalogRoot>{inner}</CatalogRoot>;\n}\n\nfunction SearchesCatalogShell({\n children,\n className,\n render,\n}: {\n children?: ReactNode;\n className?: string;\n render?: RenderProp<ComponentProps<\"div\">, Record<never, never>>;\n}) {\n useCatalogConfig();\n const body =\n children !== undefined ? (\n children\n ) : (\n <>\n <SearchesCatalogSearchFilter />\n <SearchesCatalogCategoryFilter />\n <SearchesCatalogColumnFilters />\n <SearchesCatalogActiveFilters />\n <SearchesCatalogList />\n <SearchesCatalogEmpty />\n </>\n );\n return (\n <DefaultCatalogRoot className={className} render={render}>\n {body}\n </DefaultCatalogRoot>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;AAwDA,SAAgB,gBAAgB,OAA6B;AAC3D,KAAI,aAAa,MACf,QAAO,oBAAC,4BAAD,EAA4B,GAAI,OAAS;AAElD,QAAO,oBAAC,uBAAD,EAAuB,GAAI,OAAS;;AAG7C,SAAS,sBAAsB,EAC7B,QACA,sBACA,GAAG,QAC0B;AAE7B,QAAO,oBAAC,4BAAD;EAA4B,SADnB,wBAAwB;GAAE;GAAQ;GAAsB,CAAC;EACpB,GAAI;EAAQ;;AAGnE,SAAS,2BAA2B,EAClC,SACA,UACA,WACA,YACA,YACA,kBACA,UAC+B;CAC/B,MAAM,oBAAoB,cAAc;CACxC,MAAM,CAAC,gBAAgB,qBAAqB,SAAwB,KAAK;CAEzE,MAAM,QAAQ,eACL;EACL,GAAG;EACH,cAAc;EACd;EACA;EACD,GACD;EAAC;EAAS;EAAkB;EAAe,CAC5C;CAED,MAAM,QACJ,oBAAC,uBAAuB,UAAxB;EAAwC;YACtC,oBAAC,sBAAD;GAAiC;GAAmB;GACjD;GACoB;EACS;AAEpC,KAAI,kBACF,QACE,oBAAC,aAAD,YACE,oBAAC,iBAAD;EAA6B;EAAwB;YAClD;EACe,GACN;AAGlB,QAAO,oBAAC,aAAD,YAAc,OAAoB;;AAG3C,SAAS,qBAAqB,EAC5B,UACA,WACA,UAKC;AACD,mBAAkB;AAclB,QACE,oBAAC,oBAAD;EAA+B;EAAmB;YAblD,aAAa,SACX,WAEA;GACE,oBAAC,6BAAD,EAA+B;GAC/B,oBAAC,+BAAD,EAAiC;GACjC,oBAAC,8BAAD,EAAgC;GAChC,oBAAC,8BAAD,EAAgC;GAChC,oBAAC,qBAAD,EAAuB;GACvB,oBAAC,sBAAD,EAAwB;GACvB;EAKgB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { RenderProp } from "../../../utils/render-slot.mjs";
|
|
2
|
+
import * as _$react from "react";
|
|
3
|
+
import { ComponentProps } from "react";
|
|
4
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
+
|
|
6
|
+
//#region src/components/compound/searches-catalog/search-filter.d.ts
|
|
7
|
+
interface SearchesCatalogSearchFilterState {
|
|
8
|
+
value: string;
|
|
9
|
+
setValue: (v: string) => void;
|
|
10
|
+
isActive: boolean;
|
|
11
|
+
}
|
|
12
|
+
interface SearchesCatalogSearchFilterProps {
|
|
13
|
+
placeholder?: string;
|
|
14
|
+
className?: string;
|
|
15
|
+
render?: RenderProp<ComponentProps<"input">, SearchesCatalogSearchFilterState>;
|
|
16
|
+
}
|
|
17
|
+
declare function SearchesCatalogSearchFilter({
|
|
18
|
+
placeholder,
|
|
19
|
+
className,
|
|
20
|
+
render
|
|
21
|
+
}: SearchesCatalogSearchFilterProps): string | number | bigint | boolean | _$react_jsx_runtime0.JSX.Element | Iterable<_$react.ReactNode> | Promise<string | number | bigint | boolean | _$react.ReactPortal | _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>> | Iterable<_$react.ReactNode> | null | undefined> | null | undefined;
|
|
22
|
+
//#endregion
|
|
23
|
+
export { SearchesCatalogSearchFilter, SearchesCatalogSearchFilterProps, SearchesCatalogSearchFilterState };
|
|
24
|
+
//# sourceMappingURL=search-filter.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-filter.d.mts","names":[],"sources":["../../../../src/components/compound/searches-catalog/search-filter.tsx"],"mappings":";;;;;;UAQiB,gCAAA;EACf,KAAA;EACA,QAAA,GAAW,CAAA;EACX,QAAA;AAAA;AAAA,UAGe,gCAAA;EACf,WAAA;EACA,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,WAAyB,gCAAA;AAAA;AAAA,iBAG/B,2BAAA,CAAA;EACd,WAAA;EACA,SAAA;EACA;AAAA,GACC,gCAAA,wCAAgC,oBAAA,CAAA,GAAA,CAAA,OAAA,GAAA,QAAA,CAAA,OAAA,CAAA,SAAA,IAAA,OAAA,sCAAA,OAAA,CAAA,WAAA,GAAA,OAAA,CAAA,YAAA,mBAAA,OAAA,CAAA,qBAAA,SAAA,QAAA,CAAA,OAAA,CAAA,SAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { cn } from "../../../lib/utils.mjs";
|
|
2
|
+
import { useCatalogConfig } from "../../../context/catalog-config-context.mjs";
|
|
3
|
+
import { renderSlot } from "../../../utils/render-slot.mjs";
|
|
4
|
+
import { useSearchesCatalogContext } from "../../../context/searches-catalog-context.mjs";
|
|
5
|
+
import { Input } from "../../ui/input.mjs";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { Search } from "lucide-react";
|
|
8
|
+
|
|
9
|
+
//#region src/components/compound/searches-catalog/search-filter.tsx
|
|
10
|
+
function SearchesCatalogSearchFilter({ placeholder = "Search searches...", className, render }) {
|
|
11
|
+
const { globalFilterInput, setGlobalFilterInput } = useSearchesCatalogContext();
|
|
12
|
+
const { classNames } = useCatalogConfig();
|
|
13
|
+
const isActive = !!globalFilterInput;
|
|
14
|
+
if (render) return renderSlot({
|
|
15
|
+
defaultTagName: "input",
|
|
16
|
+
render,
|
|
17
|
+
state: {
|
|
18
|
+
value: globalFilterInput,
|
|
19
|
+
setValue: setGlobalFilterInput,
|
|
20
|
+
isActive
|
|
21
|
+
},
|
|
22
|
+
props: {
|
|
23
|
+
type: "search",
|
|
24
|
+
placeholder,
|
|
25
|
+
value: globalFilterInput,
|
|
26
|
+
onChange: (e) => setGlobalFilterInput(e.target.value),
|
|
27
|
+
"data-active": isActive ? "" : void 0,
|
|
28
|
+
className: cn(classNames?.searchInput, className)
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
32
|
+
"data-p0": "catalog-search",
|
|
33
|
+
className: cn("pz:relative", classNames?.searchInputContainer),
|
|
34
|
+
children: [/* @__PURE__ */ jsx(Search, { className: "pz:absolute pz:left-2.5 pz:top-1/2 pz:-translate-y-1/2 pz:size-4 pz:text-muted-foreground pz:pointer-events-none" }), /* @__PURE__ */ jsx(Input, {
|
|
35
|
+
type: "search",
|
|
36
|
+
placeholder,
|
|
37
|
+
value: globalFilterInput,
|
|
38
|
+
onChange: (e) => setGlobalFilterInput(e.target.value),
|
|
39
|
+
className: cn("pz:pl-8", classNames?.searchInput, className)
|
|
40
|
+
})]
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
//#endregion
|
|
45
|
+
export { SearchesCatalogSearchFilter };
|
|
46
|
+
//# sourceMappingURL=search-filter.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-filter.mjs","names":["SearchIcon"],"sources":["../../../../src/components/compound/searches-catalog/search-filter.tsx"],"sourcesContent":["import { Search as SearchIcon } from \"lucide-react\";\nimport type { ChangeEvent, ComponentProps } from \"react\";\nimport { useCatalogConfig } from \"../../../context/catalog-config-context.js\";\nimport { useSearchesCatalogContext } from \"../../../context/searches-catalog-context.js\";\nimport { cn } from \"../../../lib/utils.js\";\nimport { type RenderProp, renderSlot } from \"../../../utils/render-slot.js\";\nimport { Input } from \"../../ui/input.js\";\n\nexport interface SearchesCatalogSearchFilterState {\n value: string;\n setValue: (v: string) => void;\n isActive: boolean;\n}\n\nexport interface SearchesCatalogSearchFilterProps {\n placeholder?: string;\n className?: string;\n render?: RenderProp<ComponentProps<\"input\">, SearchesCatalogSearchFilterState>;\n}\n\nexport function SearchesCatalogSearchFilter({\n placeholder = \"Search searches...\",\n className,\n render,\n}: SearchesCatalogSearchFilterProps) {\n const { globalFilterInput, setGlobalFilterInput } = useSearchesCatalogContext();\n const { classNames } = useCatalogConfig();\n const isActive = !!globalFilterInput;\n\n if (render) {\n return renderSlot({\n defaultTagName: \"input\",\n render,\n state: {\n value: globalFilterInput,\n setValue: setGlobalFilterInput,\n isActive,\n },\n props: {\n type: \"search\",\n placeholder,\n value: globalFilterInput,\n onChange: (e: ChangeEvent<HTMLInputElement>) => setGlobalFilterInput(e.target.value),\n \"data-active\": isActive ? \"\" : undefined,\n className: cn(classNames?.searchInput, className),\n } as ComponentProps<\"input\">,\n });\n }\n\n return (\n <div data-p0=\"catalog-search\" className={cn(\"pz:relative\", classNames?.searchInputContainer)}>\n <SearchIcon className=\"pz:absolute pz:left-2.5 pz:top-1/2 pz:-translate-y-1/2 pz:size-4 pz:text-muted-foreground pz:pointer-events-none\" />\n <Input\n type=\"search\"\n placeholder={placeholder}\n value={globalFilterInput}\n onChange={(e) => setGlobalFilterInput(e.target.value)}\n className={cn(\"pz:pl-8\", classNames?.searchInput, className)}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AAoBA,SAAgB,4BAA4B,EAC1C,cAAc,sBACd,WACA,UACmC;CACnC,MAAM,EAAE,mBAAmB,yBAAyB,2BAA2B;CAC/E,MAAM,EAAE,eAAe,kBAAkB;CACzC,MAAM,WAAW,CAAC,CAAC;AAEnB,KAAI,OACF,QAAO,WAAW;EAChB,gBAAgB;EAChB;EACA,OAAO;GACL,OAAO;GACP,UAAU;GACV;GACD;EACD,OAAO;GACL,MAAM;GACN;GACA,OAAO;GACP,WAAW,MAAqC,qBAAqB,EAAE,OAAO,MAAM;GACpF,eAAe,WAAW,KAAK;GAC/B,WAAW,GAAG,YAAY,aAAa,UAAU;GAClD;EACF,CAAC;AAGJ,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAiB,WAAW,GAAG,eAAe,YAAY,qBAAqB;YAA5F,CACE,oBAACA,QAAD,EAAY,WAAU,oHAAqH,GAC3I,oBAAC,OAAD;GACE,MAAK;GACQ;GACb,OAAO;GACP,WAAW,MAAM,qBAAqB,EAAE,OAAO,MAAM;GACrD,WAAW,GAAG,WAAW,YAAY,aAAa,UAAU;GAC5D,EACE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RenderProp } from "../../../utils/render-slot.mjs";
|
|
2
|
+
import { FilterSelectOption } from "../../defaults/catalog/filter-select.mjs";
|
|
3
|
+
import { ColumnFilterState } from "./column-filter.mjs";
|
|
4
|
+
import { ComponentProps, ReactNode } from "react";
|
|
5
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
|
|
7
|
+
//#region src/components/compound/searches-catalog/tag-filter.d.ts
|
|
8
|
+
interface SearchesCatalogTagFilterProps {
|
|
9
|
+
options?: ReadonlyArray<FilterSelectOption>;
|
|
10
|
+
placeholder?: ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
render?: RenderProp<ComponentProps<"div">, ColumnFilterState>;
|
|
13
|
+
}
|
|
14
|
+
declare function SearchesCatalogTagFilter({
|
|
15
|
+
options,
|
|
16
|
+
placeholder,
|
|
17
|
+
className,
|
|
18
|
+
render
|
|
19
|
+
}: SearchesCatalogTagFilterProps): _$react_jsx_runtime0.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { SearchesCatalogTagFilter, SearchesCatalogTagFilterProps };
|
|
22
|
+
//# sourceMappingURL=tag-filter.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tag-filter.d.mts","names":[],"sources":["../../../../src/components/compound/searches-catalog/tag-filter.tsx"],"mappings":";;;;;;;UAMiB,6BAAA;EACf,OAAA,GAAU,aAAA,CAAc,kBAAA;EACxB,WAAA,GAAc,SAAA;EACd,SAAA;EACA,MAAA,GAAS,UAAA,CAAW,cAAA,SAAuB,iBAAA;AAAA;AAAA,iBAS7B,wBAAA,CAAA;EACd,OAAA;EACA,WAAA;EACA,SAAA;EACA;AAAA,GACC,6BAAA,GAA6B,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SearchesCatalogColumnFilter } from "./column-filter.mjs";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Tag } from "lucide-react";
|
|
4
|
+
|
|
5
|
+
//#region src/components/compound/searches-catalog/tag-filter.tsx
|
|
6
|
+
const DEFAULT_PLACEHOLDER = /* @__PURE__ */ jsxs("span", {
|
|
7
|
+
className: "pz:inline-flex pz:items-center pz:gap-1.5",
|
|
8
|
+
children: [/* @__PURE__ */ jsx(Tag, { className: "pz:size-4" }), " Tag"]
|
|
9
|
+
});
|
|
10
|
+
function SearchesCatalogTagFilter({ options, placeholder = DEFAULT_PLACEHOLDER, className, render }) {
|
|
11
|
+
return /* @__PURE__ */ jsx(SearchesCatalogColumnFilter, {
|
|
12
|
+
id: "tags",
|
|
13
|
+
placeholder,
|
|
14
|
+
options,
|
|
15
|
+
className,
|
|
16
|
+
render
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
export { SearchesCatalogTagFilter };
|
|
22
|
+
//# sourceMappingURL=tag-filter.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tag-filter.mjs","names":[],"sources":["../../../../src/components/compound/searches-catalog/tag-filter.tsx"],"sourcesContent":["import { Tag } from \"lucide-react\";\nimport type { ComponentProps, ReactNode } from \"react\";\nimport type { RenderProp } from \"../../../utils/render-slot.js\";\nimport type { FilterSelectOption } from \"../../defaults/catalog/filter-select.js\";\nimport { type ColumnFilterState, SearchesCatalogColumnFilter } from \"./column-filter.js\";\n\nexport interface SearchesCatalogTagFilterProps {\n options?: ReadonlyArray<FilterSelectOption>;\n placeholder?: ReactNode;\n className?: string;\n render?: RenderProp<ComponentProps<\"div\">, ColumnFilterState>;\n}\n\nconst DEFAULT_PLACEHOLDER = (\n <span className=\"pz:inline-flex pz:items-center pz:gap-1.5\">\n <Tag className=\"pz:size-4\" /> Tag\n </span>\n);\n\nexport function SearchesCatalogTagFilter({\n options,\n placeholder = DEFAULT_PLACEHOLDER,\n className,\n render,\n}: SearchesCatalogTagFilterProps) {\n return (\n <SearchesCatalogColumnFilter\n id=\"tags\"\n placeholder={placeholder}\n options={options}\n className={className}\n render={render}\n />\n );\n}\n"],"mappings":";;;;;AAaA,MAAM,sBACJ,qBAAC,QAAD;CAAM,WAAU;WAAhB,CACE,oBAAC,KAAD,EAAK,WAAU,aAAc,UACxB;;AAGT,SAAgB,yBAAyB,EACvC,SACA,cAAc,qBACd,WACA,UACgC;AAChC,QACE,oBAAC,6BAAD;EACE,IAAG;EACU;EACJ;EACE;EACH;EACR"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { useFieldError } from "../../../hooks/use-field-error.mjs";
|
|
2
|
+
import { IncludeExcludeCombobox } from "../../internal/combobox/include-exclude-combobox.mjs";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/components/defaults/adapters/async-include-exclude-select-input.tsx
|
|
6
|
+
function AsyncIncludeExcludeSelectInputAdapter(field) {
|
|
7
|
+
const includeError = useFieldError(field.form, `${field.path}.include`);
|
|
8
|
+
const excludeError = useFieldError(field.form, `${field.path}.exclude`);
|
|
9
|
+
const error = includeError ?? excludeError;
|
|
10
|
+
const maxItems = field.meta.maxItems;
|
|
11
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
12
|
+
"data-p0": "input",
|
|
13
|
+
className: "pz:flex pz:flex-col pz:gap-1",
|
|
14
|
+
children: [/* @__PURE__ */ jsx(IncludeExcludeCombobox, {
|
|
15
|
+
include: field.include.value,
|
|
16
|
+
exclude: field.exclude.value,
|
|
17
|
+
onChange: (next) => field.setValue(next),
|
|
18
|
+
loadOptions: field.loadOptions,
|
|
19
|
+
maxItems,
|
|
20
|
+
placeholder: field.meta.placeholder,
|
|
21
|
+
ariaInvalid: !!error || !!field.error
|
|
22
|
+
}), error && /* @__PURE__ */ jsx("span", {
|
|
23
|
+
className: "pz:text-destructive pz:text-xs pz:font-medium",
|
|
24
|
+
role: "alert",
|
|
25
|
+
children: error
|
|
26
|
+
})]
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { AsyncIncludeExcludeSelectInputAdapter };
|
|
32
|
+
//# sourceMappingURL=async-include-exclude-select-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async-include-exclude-select-input.mjs","names":[],"sources":["../../../../src/components/defaults/adapters/async-include-exclude-select-input.tsx"],"sourcesContent":["import { useFieldError } from \"../../../hooks/use-field-error.js\";\nimport type { FieldHandle } from \"../../../types/field-handle.js\";\nimport { IncludeExcludeCombobox } from \"../../internal/combobox/include-exclude-combobox.js\";\n\nexport function AsyncIncludeExcludeSelectInputAdapter(\n field: FieldHandle<\"async_include_exclude_select_input\">,\n) {\n const includeError = useFieldError(field.form, `${field.path}.include`);\n const excludeError = useFieldError(field.form, `${field.path}.exclude`);\n const error = includeError ?? excludeError;\n const maxItems = (field.meta as { maxItems?: number }).maxItems;\n\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:flex-col pz:gap-1\">\n <IncludeExcludeCombobox\n include={field.include.value}\n exclude={field.exclude.value}\n onChange={(next) => field.setValue(next)}\n loadOptions={field.loadOptions}\n maxItems={maxItems}\n placeholder={field.meta.placeholder}\n ariaInvalid={!!error || !!field.error}\n />\n {error && (\n <span className=\"pz:text-destructive pz:text-xs pz:font-medium\" role=\"alert\">\n {error}\n </span>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,sCACd,OACA;CACA,MAAM,eAAe,cAAc,MAAM,MAAM,GAAG,MAAM,KAAK,UAAU;CACvE,MAAM,eAAe,cAAc,MAAM,MAAM,GAAG,MAAM,KAAK,UAAU;CACvE,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,WAAY,MAAM,KAA+B;AAEvD,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAA/B,CACE,oBAAC,wBAAD;GACE,SAAS,MAAM,QAAQ;GACvB,SAAS,MAAM,QAAQ;GACvB,WAAW,SAAS,MAAM,SAAS,KAAK;GACxC,aAAa,MAAM;GACT;GACV,aAAa,MAAM,KAAK;GACxB,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM;GAChC,GACD,SACC,oBAAC,QAAD;GAAM,WAAU;GAAgD,MAAK;aAClE;GACI,EAEL"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SuggestCombobox } from "../../internal/combobox/suggest-combobox.mjs";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/defaults/adapters/async-multi-select-input.tsx
|
|
5
|
+
function AsyncMultiSelectInputAdapter(field) {
|
|
6
|
+
return /* @__PURE__ */ jsx("div", {
|
|
7
|
+
"data-p0": "input",
|
|
8
|
+
children: /* @__PURE__ */ jsx(SuggestCombobox, {
|
|
9
|
+
value: field.selected,
|
|
10
|
+
onChange: (next) => {
|
|
11
|
+
const current = new Set(field.selected);
|
|
12
|
+
const incoming = new Set(next);
|
|
13
|
+
[...current, ...incoming].forEach((v) => {
|
|
14
|
+
if (current.has(v) !== incoming.has(v)) field.onToggle(v);
|
|
15
|
+
});
|
|
16
|
+
},
|
|
17
|
+
loadOptions: field.loadOptions,
|
|
18
|
+
ariaInvalid: !!field.error,
|
|
19
|
+
placeholder: field.meta.placeholder
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { AsyncMultiSelectInputAdapter };
|
|
26
|
+
//# sourceMappingURL=async-multi-select-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async-multi-select-input.mjs","names":[],"sources":["../../../../src/components/defaults/adapters/async-multi-select-input.tsx"],"sourcesContent":["import type { FieldHandle } from \"../../../types/field-handle.js\";\nimport { SuggestCombobox } from \"../../internal/combobox/suggest-combobox.js\";\n\nexport function AsyncMultiSelectInputAdapter(field: FieldHandle<\"async_multi_select_input\">) {\n return (\n <div data-p0=\"input\">\n <SuggestCombobox\n value={field.selected}\n onChange={(next) => {\n const current = new Set(field.selected);\n const incoming = new Set(next);\n [...current, ...incoming].forEach((v) => {\n if (current.has(v) !== incoming.has(v)) field.onToggle(v);\n });\n }}\n loadOptions={field.loadOptions}\n ariaInvalid={!!field.error}\n placeholder={field.meta.placeholder}\n />\n </div>\n );\n}\n"],"mappings":";;;;AAGA,SAAgB,6BAA6B,OAAgD;AAC3F,QACE,oBAAC,OAAD;EAAK,WAAQ;YACX,oBAAC,iBAAD;GACE,OAAO,MAAM;GACb,WAAW,SAAS;IAClB,MAAM,UAAU,IAAI,IAAI,MAAM,SAAS;IACvC,MAAM,WAAW,IAAI,IAAI,KAAK;AAC9B,KAAC,GAAG,SAAS,GAAG,SAAS,CAAC,SAAS,MAAM;AACvC,SAAI,QAAQ,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,CAAE,OAAM,SAAS,EAAE;MACzD;;GAEJ,aAAa,MAAM;GACnB,aAAa,CAAC,CAAC,MAAM;GACrB,aAAa,MAAM,KAAK;GACxB;EACE"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { HoverInfo } from "../../hover-info.mjs";
|
|
2
|
+
import { Label } from "../../ui/label.mjs";
|
|
3
|
+
import { Switch } from "../../ui/switch.mjs";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
|
|
6
|
+
//#region src/components/defaults/adapters/boolean-input.tsx
|
|
7
|
+
function BooleanInputAdapter(field) {
|
|
8
|
+
if (field.kind === "nullable_boolean_input") {
|
|
9
|
+
const state = field.isNull ? "unset" : field.checked ? "true" : "false";
|
|
10
|
+
return /* @__PURE__ */ jsx("div", {
|
|
11
|
+
"data-p0": "input",
|
|
12
|
+
role: "radiogroup",
|
|
13
|
+
"aria-invalid": !!field.error,
|
|
14
|
+
className: "pz:inline-flex pz:w-fit pz:justify-self-start pz:items-center pz:rounded-md pz:border pz:border-input pz:bg-transparent pz:p-0.5 pz:shadow-xs",
|
|
15
|
+
children: [
|
|
16
|
+
{
|
|
17
|
+
key: "unset",
|
|
18
|
+
label: "Any",
|
|
19
|
+
onClick: () => field.clear()
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
key: "true",
|
|
23
|
+
label: "Yes",
|
|
24
|
+
onClick: () => field.setValue(true)
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
key: "false",
|
|
28
|
+
label: "No",
|
|
29
|
+
onClick: () => field.setValue(false)
|
|
30
|
+
}
|
|
31
|
+
].map((seg) => {
|
|
32
|
+
const active = state === seg.key;
|
|
33
|
+
return /* @__PURE__ */ jsx("button", {
|
|
34
|
+
type: "button",
|
|
35
|
+
role: "radio",
|
|
36
|
+
"aria-checked": active,
|
|
37
|
+
onClick: seg.onClick,
|
|
38
|
+
className: "pz:cursor-pointer pz:rounded-sm pz:px-3 pz:py-1 pz:text-xs pz:font-medium pz:transition-colors " + (active ? "pz:bg-primary pz:text-primary-foreground" : "pz:text-muted-foreground pz:hover:text-foreground"),
|
|
39
|
+
children: seg.label
|
|
40
|
+
}, seg.key);
|
|
41
|
+
})
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if (!!!(field.label || field.description || field.info)) return /* @__PURE__ */ jsx("div", {
|
|
45
|
+
"data-p0": "input",
|
|
46
|
+
className: "pz:flex pz:items-center",
|
|
47
|
+
children: /* @__PURE__ */ jsx(Switch, {
|
|
48
|
+
id: field.id,
|
|
49
|
+
checked: field.checked,
|
|
50
|
+
onCheckedChange: () => field.toggle(),
|
|
51
|
+
"aria-invalid": !!field.error
|
|
52
|
+
})
|
|
53
|
+
});
|
|
54
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
55
|
+
"data-p0": "input",
|
|
56
|
+
className: "pz:flex pz:items-start pz:justify-between pz:gap-4",
|
|
57
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
58
|
+
className: "pz:flex pz:flex-col pz:gap-0.5 pz:min-w-0",
|
|
59
|
+
children: [(field.label || field.info) && /* @__PURE__ */ jsxs("div", {
|
|
60
|
+
className: "pz:flex pz:items-center pz:gap-1.5",
|
|
61
|
+
children: [field.label && /* @__PURE__ */ jsx(Label, {
|
|
62
|
+
htmlFor: field.id,
|
|
63
|
+
className: "pz:text-sm pz:font-medium pz:leading-none pz:cursor-pointer",
|
|
64
|
+
children: field.label
|
|
65
|
+
}), field.info && /* @__PURE__ */ jsx(HoverInfo, { children: field.info })]
|
|
66
|
+
}), field.description && /* @__PURE__ */ jsx("p", {
|
|
67
|
+
className: "pz:text-xs pz:text-muted-foreground",
|
|
68
|
+
children: field.description
|
|
69
|
+
})]
|
|
70
|
+
}), /* @__PURE__ */ jsx(Switch, {
|
|
71
|
+
id: field.id,
|
|
72
|
+
checked: field.checked,
|
|
73
|
+
onCheckedChange: () => field.toggle(),
|
|
74
|
+
"aria-invalid": !!field.error,
|
|
75
|
+
className: "pz:mt-0.5 pz:shrink-0"
|
|
76
|
+
})]
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//#endregion
|
|
81
|
+
export { BooleanInputAdapter };
|
|
82
|
+
//# sourceMappingURL=boolean-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean-input.mjs","names":[],"sources":["../../../../src/components/defaults/adapters/boolean-input.tsx"],"sourcesContent":["import type { FieldHandle } from \"../../../types/field-handle.js\";\nimport { HoverInfo } from \"../../hover-info.js\";\nimport { Label } from \"../../ui/label.js\";\nimport { Switch } from \"../../ui/switch.js\";\n\nexport function BooleanInputAdapter(\n field: FieldHandle<\"boolean_input\"> | FieldHandle<\"nullable_boolean_input\">,\n) {\n if (field.kind === \"nullable_boolean_input\") {\n const state: \"unset\" | \"true\" | \"false\" = field.isNull\n ? \"unset\"\n : field.checked\n ? \"true\"\n : \"false\";\n\n const segments: {\n key: typeof state;\n label: string;\n onClick: () => void;\n }[] = [\n { key: \"unset\", label: \"Any\", onClick: () => field.clear() },\n { key: \"true\", label: \"Yes\", onClick: () => field.setValue(true as any) },\n {\n key: \"false\",\n label: \"No\",\n onClick: () => field.setValue(false as any),\n },\n ];\n\n return (\n <div\n data-p0=\"input\"\n role=\"radiogroup\"\n aria-invalid={!!field.error}\n className=\"pz:inline-flex pz:w-fit pz:justify-self-start pz:items-center pz:rounded-md pz:border pz:border-input pz:bg-transparent pz:p-0.5 pz:shadow-xs\"\n >\n {segments.map((seg) => {\n const active = state === seg.key;\n return (\n <button\n key={seg.key}\n type=\"button\"\n role=\"radio\"\n aria-checked={active}\n onClick={seg.onClick}\n className={\n \"pz:cursor-pointer pz:rounded-sm pz:px-3 pz:py-1 pz:text-xs pz:font-medium pz:transition-colors \" +\n (active\n ? \"pz:bg-primary pz:text-primary-foreground\"\n : \"pz:text-muted-foreground pz:hover:text-foreground\")\n }\n >\n {seg.label}\n </button>\n );\n })}\n </div>\n );\n }\n\n const hasHeader = !!(field.label || field.description || field.info);\n\n if (!hasHeader) {\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:items-center\">\n <Switch\n id={field.id}\n checked={field.checked}\n onCheckedChange={() => field.toggle()}\n aria-invalid={!!field.error}\n />\n </div>\n );\n }\n\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:items-start pz:justify-between pz:gap-4\">\n <div className=\"pz:flex pz:flex-col pz:gap-0.5 pz:min-w-0\">\n {(field.label || field.info) && (\n <div className=\"pz:flex pz:items-center pz:gap-1.5\">\n {field.label && (\n <Label\n htmlFor={field.id}\n className=\"pz:text-sm pz:font-medium pz:leading-none pz:cursor-pointer\"\n >\n {field.label}\n </Label>\n )}\n {field.info && <HoverInfo>{field.info}</HoverInfo>}\n </div>\n )}\n {field.description && (\n <p className=\"pz:text-xs pz:text-muted-foreground\">{field.description}</p>\n )}\n </div>\n <Switch\n id={field.id}\n checked={field.checked}\n onCheckedChange={() => field.toggle()}\n aria-invalid={!!field.error}\n className=\"pz:mt-0.5 pz:shrink-0\"\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAKA,SAAgB,oBACd,OACA;AACA,KAAI,MAAM,SAAS,0BAA0B;EAC3C,MAAM,QAAoC,MAAM,SAC5C,UACA,MAAM,UACJ,SACA;AAgBN,SACE,oBAAC,OAAD;GACE,WAAQ;GACR,MAAK;GACL,gBAAc,CAAC,CAAC,MAAM;GACtB,WAAU;aAfR;IACJ;KAAE,KAAK;KAAS,OAAO;KAAO,eAAe,MAAM,OAAO;KAAE;IAC5D;KAAE,KAAK;KAAQ,OAAO;KAAO,eAAe,MAAM,SAAS,KAAY;KAAE;IACzE;KACE,KAAK;KACL,OAAO;KACP,eAAe,MAAM,SAAS,MAAa;KAC5C;IACF,CASa,KAAK,QAAQ;IACrB,MAAM,SAAS,UAAU,IAAI;AAC7B,WACE,oBAAC,UAAD;KAEE,MAAK;KACL,MAAK;KACL,gBAAc;KACd,SAAS,IAAI;KACb,WACE,qGACC,SACG,6CACA;eAGL,IAAI;KACE,EAbF,IAAI,IAaF;KAEX;GACE;;AAMV,KAAI,CAFc,CAAC,EAAE,MAAM,SAAS,MAAM,eAAe,MAAM,MAG7D,QACE,oBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAC7B,oBAAC,QAAD;GACE,IAAI,MAAM;GACV,SAAS,MAAM;GACf,uBAAuB,MAAM,QAAQ;GACrC,gBAAc,CAAC,CAAC,MAAM;GACtB;EACE;AAIV,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAA/B,CACE,qBAAC,OAAD;GAAK,WAAU;aAAf,EACI,MAAM,SAAS,MAAM,SACrB,qBAAC,OAAD;IAAK,WAAU;cAAf,CACG,MAAM,SACL,oBAAC,OAAD;KACE,SAAS,MAAM;KACf,WAAU;eAET,MAAM;KACD,GAET,MAAM,QAAQ,oBAAC,WAAD,YAAY,MAAM,MAAiB,EAC9C;OAEP,MAAM,eACL,oBAAC,KAAD;IAAG,WAAU;cAAuC,MAAM;IAAgB,EAExE;MACN,oBAAC,QAAD;GACE,IAAI,MAAM;GACV,SAAS,MAAM;GACf,uBAAuB,MAAM,QAAQ;GACrC,gBAAc,CAAC,CAAC,MAAM;GACtB,WAAU;GACV,EACE"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { cn } from "../../../lib/utils.mjs";
|
|
2
|
+
import { Button } from "../../ui/button.mjs";
|
|
3
|
+
import { IconPlus } from "../../internal/icons.mjs";
|
|
4
|
+
import { useFieldError } from "../../../hooks/use-field-error.mjs";
|
|
5
|
+
import { ProviderLogo } from "../../../widgets/provider-logo.mjs";
|
|
6
|
+
import { SuggestCombobox } from "../../internal/combobox/suggest-combobox.mjs";
|
|
7
|
+
import { useMemo } from "react";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
|
|
10
|
+
//#region src/components/defaults/adapters/connector-input.tsx
|
|
11
|
+
function ConnectorInputAdapter(field) {
|
|
12
|
+
const connections = field.meta.filteredConnections ?? [];
|
|
13
|
+
const value = field.value ?? null;
|
|
14
|
+
const current = value?.connections ?? [];
|
|
15
|
+
const hasError = !!useFieldError(field.form, field.path);
|
|
16
|
+
const options = useMemo(() => connections.map((c) => ({
|
|
17
|
+
value: c.connection,
|
|
18
|
+
label: c.connection
|
|
19
|
+
})), [connections]);
|
|
20
|
+
const providerByConnection = useMemo(() => {
|
|
21
|
+
const map = /* @__PURE__ */ new Map();
|
|
22
|
+
for (const c of connections) map.set(c.connection, c.provider);
|
|
23
|
+
return map;
|
|
24
|
+
}, [connections]);
|
|
25
|
+
const renderLogo = (connectionId) => {
|
|
26
|
+
const provider = providerByConnection.get(connectionId);
|
|
27
|
+
if (!provider) return null;
|
|
28
|
+
return /* @__PURE__ */ jsx(ProviderLogo, {
|
|
29
|
+
provider,
|
|
30
|
+
size: 16
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
if (field.meta.connectorMode === "disabled") return /* @__PURE__ */ jsx("div", {
|
|
34
|
+
"data-p0": "input",
|
|
35
|
+
className: "pz:flex pz:items-center pz:rounded-md pz:border pz:border-input pz:bg-muted pz:px-3 pz:py-2 pz:opacity-60",
|
|
36
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
37
|
+
className: "pz:text-sm pz:text-muted-foreground",
|
|
38
|
+
children: "Custom connections are not supported for this pipe."
|
|
39
|
+
})
|
|
40
|
+
});
|
|
41
|
+
if (connections.length === 0) return /* @__PURE__ */ jsx("div", {
|
|
42
|
+
"data-p0": "input",
|
|
43
|
+
className: "pz:flex pz:flex-col pz:gap-2 pz:rounded-md pz:border pz:border-input pz:bg-transparent pz:px-3 pz:py-2",
|
|
44
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
45
|
+
className: "pz:text-xs pz:text-muted-foreground",
|
|
46
|
+
children: "No connections available."
|
|
47
|
+
})
|
|
48
|
+
});
|
|
49
|
+
if (value == null) return /* @__PURE__ */ jsx("div", {
|
|
50
|
+
"data-p0": "input",
|
|
51
|
+
className: "pz:flex pz:items-center",
|
|
52
|
+
children: /* @__PURE__ */ jsxs(Button, {
|
|
53
|
+
type: "button",
|
|
54
|
+
variant: "link",
|
|
55
|
+
size: "xs",
|
|
56
|
+
onClick: () => field.setValue({ connections: [] }),
|
|
57
|
+
children: [/* @__PURE__ */ jsx(IconPlus, {}), "Add custom connection"]
|
|
58
|
+
})
|
|
59
|
+
});
|
|
60
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
61
|
+
"data-p0": "input",
|
|
62
|
+
className: "pz:flex pz:flex-col pz:gap-1",
|
|
63
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
64
|
+
className: cn(hasError && "pz:[&_[data-slot=combobox-chips]]:border-destructive"),
|
|
65
|
+
children: /* @__PURE__ */ jsx(SuggestCombobox, {
|
|
66
|
+
value: current.map((c) => c.connection),
|
|
67
|
+
onChange: (next) => field.setValue({
|
|
68
|
+
...value,
|
|
69
|
+
connections: next.map((connection) => ({
|
|
70
|
+
type: "vault",
|
|
71
|
+
connection
|
|
72
|
+
}))
|
|
73
|
+
}),
|
|
74
|
+
options,
|
|
75
|
+
iconFor: renderLogo,
|
|
76
|
+
ariaInvalid: hasError,
|
|
77
|
+
placeholder: "Select a connection"
|
|
78
|
+
})
|
|
79
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
80
|
+
className: "pz:flex pz:items-center pz:justify-end",
|
|
81
|
+
children: /* @__PURE__ */ jsx(Button, {
|
|
82
|
+
type: "button",
|
|
83
|
+
variant: "link",
|
|
84
|
+
size: "xs",
|
|
85
|
+
onClick: () => field.setValue(null),
|
|
86
|
+
children: "Reset"
|
|
87
|
+
})
|
|
88
|
+
})]
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
//#endregion
|
|
93
|
+
export { ConnectorInputAdapter };
|
|
94
|
+
//# sourceMappingURL=connector-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connector-input.mjs","names":[],"sources":["../../../../src/components/defaults/adapters/connector-input.tsx"],"sourcesContent":["import type { ProviderName } from \"@pipe0/base\";\nimport { useMemo } from \"react\";\nimport { useFieldError } from \"../../../hooks/use-field-error.js\";\nimport { cn } from \"../../../lib/utils.js\";\nimport type { FieldHandle } from \"../../../types/field-handle.js\";\nimport { ProviderLogo } from \"../../../widgets/provider-logo.js\";\nimport { SuggestCombobox } from \"../../internal/combobox/suggest-combobox.js\";\nimport { IconPlus } from \"../../internal/icons.js\";\nimport { Button } from \"../../ui/button.js\";\n\nexport function ConnectorInputAdapter(field: FieldHandle<\"connector_input\">) {\n const connections = field.meta.filteredConnections ?? [];\n const value = field.value ?? null;\n const current = value?.connections ?? [];\n const error = useFieldError(field.form, field.path);\n const hasError = !!error;\n\n const options = useMemo(\n () =>\n connections.map((c) => ({\n value: c.connection,\n label: c.connection,\n })),\n [connections],\n );\n\n const providerByConnection = useMemo(() => {\n const map = new Map<string, string>();\n for (const c of connections) map.set(c.connection, c.provider);\n return map;\n }, [connections]);\n\n const renderLogo = (connectionId: string) => {\n const provider = providerByConnection.get(connectionId);\n if (!provider) return null;\n return <ProviderLogo provider={provider as ProviderName} size={16} />;\n };\n\n if (field.meta.connectorMode === \"disabled\") {\n return (\n <div\n data-p0=\"input\"\n className=\"pz:flex pz:items-center pz:rounded-md pz:border pz:border-input pz:bg-muted pz:px-3 pz:py-2 pz:opacity-60\"\n >\n <span className=\"pz:text-sm pz:text-muted-foreground\">\n Custom connections are not supported for this pipe.\n </span>\n </div>\n );\n }\n\n if (connections.length === 0) {\n return (\n <div\n data-p0=\"input\"\n className=\"pz:flex pz:flex-col pz:gap-2 pz:rounded-md pz:border pz:border-input pz:bg-transparent pz:px-3 pz:py-2\"\n >\n <span className=\"pz:text-xs pz:text-muted-foreground\">No connections available.</span>\n </div>\n );\n }\n\n if (value == null) {\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:items-center\">\n <Button\n type=\"button\"\n variant=\"link\"\n size=\"xs\"\n onClick={() => field.setValue({ connections: [] })}\n >\n <IconPlus />\n Add custom connection\n </Button>\n </div>\n );\n }\n\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:flex-col pz:gap-1\">\n <div className={cn(hasError && \"pz:[&_[data-slot=combobox-chips]]:border-destructive\")}>\n <SuggestCombobox\n value={current.map((c) => c.connection)}\n onChange={(next) =>\n field.setValue({\n ...value,\n connections: next.map((connection) => ({\n type: \"vault\",\n connection,\n })),\n })\n }\n options={options}\n iconFor={renderLogo}\n ariaInvalid={hasError}\n placeholder=\"Select a connection\"\n />\n </div>\n <div className=\"pz:flex pz:items-center pz:justify-end\">\n <Button type=\"button\" variant=\"link\" size=\"xs\" onClick={() => field.setValue(null)}>\n Reset\n </Button>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;AAUA,SAAgB,sBAAsB,OAAuC;CAC3E,MAAM,cAAc,MAAM,KAAK,uBAAuB,EAAE;CACxD,MAAM,QAAQ,MAAM,SAAS;CAC7B,MAAM,UAAU,OAAO,eAAe,EAAE;CAExC,MAAM,WAAW,CAAC,CADJ,cAAc,MAAM,MAAM,MAAM,KAAK;CAGnD,MAAM,UAAU,cAEZ,YAAY,KAAK,OAAO;EACtB,OAAO,EAAE;EACT,OAAO,EAAE;EACV,EAAE,EACL,CAAC,YAAY,CACd;CAED,MAAM,uBAAuB,cAAc;EACzC,MAAM,sBAAM,IAAI,KAAqB;AACrC,OAAK,MAAM,KAAK,YAAa,KAAI,IAAI,EAAE,YAAY,EAAE,SAAS;AAC9D,SAAO;IACN,CAAC,YAAY,CAAC;CAEjB,MAAM,cAAc,iBAAyB;EAC3C,MAAM,WAAW,qBAAqB,IAAI,aAAa;AACvD,MAAI,CAAC,SAAU,QAAO;AACtB,SAAO,oBAAC,cAAD;GAAwB;GAA0B,MAAM;GAAM;;AAGvE,KAAI,MAAM,KAAK,kBAAkB,WAC/B,QACE,oBAAC,OAAD;EACE,WAAQ;EACR,WAAU;YAEV,oBAAC,QAAD;GAAM,WAAU;aAAsC;GAE/C;EACH;AAIV,KAAI,YAAY,WAAW,EACzB,QACE,oBAAC,OAAD;EACE,WAAQ;EACR,WAAU;YAEV,oBAAC,QAAD;GAAM,WAAU;aAAsC;GAAgC;EAClF;AAIV,KAAI,SAAS,KACX,QACE,oBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAC7B,qBAAC,QAAD;GACE,MAAK;GACL,SAAQ;GACR,MAAK;GACL,eAAe,MAAM,SAAS,EAAE,aAAa,EAAE,EAAE,CAAC;aAJpD,CAME,oBAAC,UAAD,EAAY,2BAEL;;EACL;AAIV,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAA/B,CACE,oBAAC,OAAD;GAAK,WAAW,GAAG,YAAY,uDAAuD;aACpF,oBAAC,iBAAD;IACE,OAAO,QAAQ,KAAK,MAAM,EAAE,WAAW;IACvC,WAAW,SACT,MAAM,SAAS;KACb,GAAG;KACH,aAAa,KAAK,KAAK,gBAAgB;MACrC,MAAM;MACN;MACD,EAAE;KACJ,CAAC;IAEK;IACT,SAAS;IACT,aAAa;IACb,aAAY;IACZ;GACE,GACN,oBAAC,OAAD;GAAK,WAAU;aACb,oBAAC,QAAD;IAAQ,MAAK;IAAS,SAAQ;IAAO,MAAK;IAAK,eAAe,MAAM,SAAS,KAAK;cAAE;IAE3E;GACL,EACF"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { cn } from "../../../lib/utils.mjs";
|
|
2
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../../ui/select.mjs";
|
|
3
|
+
import { WidgetStrip } from "../../../widgets/widget-strip.mjs";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
|
|
6
|
+
//#region src/components/defaults/adapters/context-select-input.tsx
|
|
7
|
+
function ContextSelectInputAdapter(field) {
|
|
8
|
+
if (field.pending) return /* @__PURE__ */ jsx("div", {
|
|
9
|
+
"data-p0": "input",
|
|
10
|
+
className: cn("pz:opacity-60"),
|
|
11
|
+
children: /* @__PURE__ */ jsxs(Select, {
|
|
12
|
+
disabled: true,
|
|
13
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
14
|
+
className: "pz:w-full",
|
|
15
|
+
children: /* @__PURE__ */ jsx(SelectValue, { placeholder: "Loading…" })
|
|
16
|
+
}), /* @__PURE__ */ jsx(SelectContent, {})]
|
|
17
|
+
})
|
|
18
|
+
});
|
|
19
|
+
if (field.suggestionsDisabled) return /* @__PURE__ */ jsxs("div", {
|
|
20
|
+
"data-p0": "input",
|
|
21
|
+
className: "pz:flex pz:flex-col pz:gap-1.5",
|
|
22
|
+
children: [/* @__PURE__ */ jsxs(Select, {
|
|
23
|
+
disabled: true,
|
|
24
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
25
|
+
className: "pz:w-full",
|
|
26
|
+
children: /* @__PURE__ */ jsx(SelectValue, { placeholder: field.meta.placeholder ?? "Select" })
|
|
27
|
+
}), /* @__PURE__ */ jsx(SelectContent, {})]
|
|
28
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
29
|
+
className: "pz:text-xs pz:gap-y-1 pz:text-muted-foreground pz:italic",
|
|
30
|
+
children: [field.suggestionsDisabledReason ?? "Suggestions unavailable", " "]
|
|
31
|
+
})]
|
|
32
|
+
});
|
|
33
|
+
const hasOptions = field.options.length > 0;
|
|
34
|
+
const selectedOption = field.options.find((o) => o.value === field.selectedValue);
|
|
35
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
36
|
+
"data-p0": "input",
|
|
37
|
+
className: "pz:flex pz:flex-col pz:gap-1",
|
|
38
|
+
children: [/* @__PURE__ */ jsxs(Select, {
|
|
39
|
+
value: field.selectedValue || void 0,
|
|
40
|
+
onValueChange: (v) => {
|
|
41
|
+
if (v === null) return;
|
|
42
|
+
field.onSelect(v);
|
|
43
|
+
},
|
|
44
|
+
name: field.path,
|
|
45
|
+
disabled: !hasOptions,
|
|
46
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
47
|
+
id: field.id,
|
|
48
|
+
"aria-invalid": !!field.error,
|
|
49
|
+
className: "pz:w-full",
|
|
50
|
+
children: /* @__PURE__ */ jsx(SelectValue, {
|
|
51
|
+
placeholder: field.meta.placeholder ?? "— Select —",
|
|
52
|
+
children: selectedOption ? /* @__PURE__ */ jsxs("span", {
|
|
53
|
+
className: "pz:flex pz:items-center pz:gap-2",
|
|
54
|
+
children: [/* @__PURE__ */ jsx(WidgetStrip, { widgets: selectedOption.widgets }), /* @__PURE__ */ jsx("span", { children: selectedOption.label })]
|
|
55
|
+
}) : void 0
|
|
56
|
+
})
|
|
57
|
+
}), /* @__PURE__ */ jsx(SelectContent, { children: field.options.map((opt) => /* @__PURE__ */ jsx(SelectItem, {
|
|
58
|
+
value: opt.value,
|
|
59
|
+
label: opt.label,
|
|
60
|
+
children: /* @__PURE__ */ jsxs("span", {
|
|
61
|
+
className: "pz:flex pz:items-center pz:gap-2",
|
|
62
|
+
children: [/* @__PURE__ */ jsx(WidgetStrip, { widgets: opt.widgets }), /* @__PURE__ */ jsx("span", { children: opt.label })]
|
|
63
|
+
})
|
|
64
|
+
}, opt.value)) })]
|
|
65
|
+
}), !hasOptions && /* @__PURE__ */ jsx("span", {
|
|
66
|
+
className: "pz:text-xs pz:text-muted-foreground",
|
|
67
|
+
children: "No fields available"
|
|
68
|
+
})]
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
//#endregion
|
|
73
|
+
export { ContextSelectInputAdapter };
|
|
74
|
+
//# sourceMappingURL=context-select-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-select-input.mjs","names":[],"sources":["../../../../src/components/defaults/adapters/context-select-input.tsx"],"sourcesContent":["import type { StoreOption } from \"@pipe0/base\";\nimport { cn } from \"../../../lib/utils.js\";\nimport type { FieldHandle } from \"../../../types/field-handle.js\";\nimport { WidgetStrip } from \"../../../widgets/widget-strip.js\";\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from \"../../ui/select.js\";\n\nexport function ContextSelectInputAdapter(field: FieldHandle<\"context_select_input\">) {\n if (field.pending) {\n return (\n <div data-p0=\"input\" className={cn(\"pz:opacity-60\")}>\n <Select disabled>\n <SelectTrigger className=\"pz:w-full\">\n <SelectValue placeholder=\"Loading…\" />\n </SelectTrigger>\n <SelectContent />\n </Select>\n </div>\n );\n }\n\n // Suggestions sub-feature gated. The input itself is disabled when there\n // are no options to choose from. The gating reason renders as a muted\n // info card directly below the input — matching the suggestions popover\n // styling used by the tagged-text-input adapter.\n if (field.suggestionsDisabled) {\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:flex-col pz:gap-1.5\">\n <Select disabled>\n <SelectTrigger className=\"pz:w-full\">\n <SelectValue placeholder={field.meta.placeholder ?? \"Select\"} />\n </SelectTrigger>\n <SelectContent />\n </Select>\n <div className=\"pz:text-xs pz:gap-y-1 pz:text-muted-foreground pz:italic\">\n {field.suggestionsDisabledReason ?? \"Suggestions unavailable\"}{\" \"}\n </div>\n </div>\n );\n }\n\n const hasOptions = field.options.length > 0;\n const selectedOption = field.options.find((o) => o.value === field.selectedValue);\n\n return (\n <div data-p0=\"input\" className=\"pz:flex pz:flex-col pz:gap-1\">\n <Select\n value={field.selectedValue || undefined}\n onValueChange={(v) => {\n if (v === null) return;\n field.onSelect(v);\n }}\n name={field.path}\n disabled={!hasOptions}\n >\n <SelectTrigger id={field.id} aria-invalid={!!field.error} className=\"pz:w-full\">\n <SelectValue placeholder={field.meta.placeholder ?? \"— Select —\"}>\n {selectedOption ? (\n <span className=\"pz:flex pz:items-center pz:gap-2\">\n <WidgetStrip widgets={selectedOption.widgets} />\n <span>{selectedOption.label}</span>\n </span>\n ) : undefined}\n </SelectValue>\n </SelectTrigger>\n <SelectContent>\n {field.options.map((opt: StoreOption) => (\n <SelectItem key={opt.value} value={opt.value} label={opt.label}>\n <span className=\"pz:flex pz:items-center pz:gap-2\">\n <WidgetStrip widgets={opt.widgets} />\n <span>{opt.label}</span>\n </span>\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n {!hasOptions && (\n <span className=\"pz:text-xs pz:text-muted-foreground\">No fields available</span>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;AAMA,SAAgB,0BAA0B,OAA4C;AACpF,KAAI,MAAM,QACR,QACE,oBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAW,GAAG,gBAAgB;YACjD,qBAAC,QAAD;GAAQ;aAAR,CACE,oBAAC,eAAD;IAAe,WAAU;cACvB,oBAAC,aAAD,EAAa,aAAY,YAAa;IACxB,GAChB,oBAAC,eAAD,EAAiB,EACV;;EACL;AAQV,KAAI,MAAM,oBACR,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAA/B,CACE,qBAAC,QAAD;GAAQ;aAAR,CACE,oBAAC,eAAD;IAAe,WAAU;cACvB,oBAAC,aAAD,EAAa,aAAa,MAAM,KAAK,eAAe,UAAY;IAClD,GAChB,oBAAC,eAAD,EAAiB,EACV;MACT,qBAAC,OAAD;GAAK,WAAU;aAAf,CACG,MAAM,6BAA6B,2BAA2B,IAC3D;KACF;;CAIV,MAAM,aAAa,MAAM,QAAQ,SAAS;CAC1C,MAAM,iBAAiB,MAAM,QAAQ,MAAM,MAAM,EAAE,UAAU,MAAM,cAAc;AAEjF,QACE,qBAAC,OAAD;EAAK,WAAQ;EAAQ,WAAU;YAA/B,CACE,qBAAC,QAAD;GACE,OAAO,MAAM,iBAAiB;GAC9B,gBAAgB,MAAM;AACpB,QAAI,MAAM,KAAM;AAChB,UAAM,SAAS,EAAE;;GAEnB,MAAM,MAAM;GACZ,UAAU,CAAC;aAPb,CASE,oBAAC,eAAD;IAAe,IAAI,MAAM;IAAI,gBAAc,CAAC,CAAC,MAAM;IAAO,WAAU;cAClE,oBAAC,aAAD;KAAa,aAAa,MAAM,KAAK,eAAe;eACjD,iBACC,qBAAC,QAAD;MAAM,WAAU;gBAAhB,CACE,oBAAC,aAAD,EAAa,SAAS,eAAe,SAAW,GAChD,oBAAC,QAAD,YAAO,eAAe,OAAa,EAC9B;UACL;KACQ;IACA,GAChB,oBAAC,eAAD,YACG,MAAM,QAAQ,KAAK,QAClB,oBAAC,YAAD;IAA4B,OAAO,IAAI;IAAO,OAAO,IAAI;cACvD,qBAAC,QAAD;KAAM,WAAU;eAAhB,CACE,oBAAC,aAAD,EAAa,SAAS,IAAI,SAAW,GACrC,oBAAC,QAAD,YAAO,IAAI,OAAa,EACnB;;IACI,EALI,IAAI,MAKR,CACb,EACY,EACT;MACR,CAAC,cACA,oBAAC,QAAD;GAAM,WAAU;aAAsC;GAA0B,EAE9E"}
|