jb-select 7.0.1 → 7.0.3

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/lib/types.ts CHANGED
@@ -23,7 +23,8 @@ export type JBSelectElements = {
23
23
  },
24
24
  emptyListPlaceholder: HTMLDivElement,
25
25
  mobileSearchInputWrapper:HTMLDivElement,
26
- frontBox:HTMLDivElement
26
+ frontBox:HTMLDivElement,
27
+ selectBox:HTMLDivElement
27
28
  }
28
29
  export type ValidationValue<TValue> = {
29
30
  selectedOption:JBOptionWebComponent<TValue> | null,
@@ -32,3 +33,6 @@ export type ValidationValue<TValue> = {
32
33
  }
33
34
 
34
35
  export type JBSelectEventType<TEvent> = EventTypeWithTarget<TEvent,JBSelectWebComponent>
36
+
37
+ /* Variants */
38
+ export type SizeVariants = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
package/lib/variables.css CHANGED
@@ -8,6 +8,11 @@
8
8
  --border-width: var(--jb-select-border-width, 1px);
9
9
  --border-bottom-width: var(--jb-select-border-bottom-width, var(--jb-select-border-width, 3px));
10
10
  --base-z-index: 1;
11
+ --selected-value-font-size:var(--jb-select-selected-value-font-size, 1rem);
12
+ --input-font-size:var(--jb-select-input-font-size, 1rem);
13
+ --selected-value-padding:var(--jb-select-selected-value-padding, 0.125rem 0.75rem 0 0.75rem);
14
+ --inline-slots-padding:0.375rem 0.625rem;
15
+ --clear-icon-size: 1rem;
11
16
  /* put message and label forward base on border radius*/
12
17
  --inline-space: calc(var(--rounded) / 1.75);
13
18
  --label-margin: var(--jb-select-label-margin, 0.125rem var(--inline-space));
@@ -31,4 +36,54 @@
31
36
 
32
37
  :host(:focus-within) {
33
38
  --border-color: var(--jb-select-border-color-focus, var(--jb-neutral));
39
+ }
40
+
41
+ /*Size*/
42
+ :host([size="xs"]){
43
+ --height:var(--jb-select-height-xs, 1.5rem);
44
+ --selected-value-font-size:var(--jb-select-selected-value-font-size-xs, 0.75rem);
45
+ --input-font-size:var(--jb-select-input-font-size-xs, 0.75rem);
46
+ --label-font-size:var(--jb-select-label-font-size-xs, 0.6rem);
47
+ /*0.7 - (0.0875 *2) */
48
+ --message-font-size:var(--jb-select-message-font-size-xs, 0.525rem);
49
+ /* 0.375 = radius-xs - (0.25*radius-xs) */
50
+ --selected-value-padding:var(--jb-select-selected-value-padding-xs, 0.125rem 0.375rem 0 0.375rem);
51
+ --rounded: var(--jb-select-rounded-xs, var(--jb-radius-xs));
52
+ --inline-slots-padding:0.125rem 0.25rem;
53
+ --clear-icon-size: 0.5rem;
54
+ }
55
+
56
+ :host([size="sm"]){
57
+ --height: var(--jb-select-height-sm, 2rem);
58
+ --selected-value-font-size:var(--jb-select-selected-value-font-size-sm, 0.875rem);
59
+ --input-font-size:var(--jb-select-input-font-size-sm, 0.875rem);
60
+ --label-font-size:var(--jb-select-label-font-size-sm, 0.7rem);
61
+ --message-font-size:var(--jb-select-message-font-size-sm, 0.6125rem);
62
+ --selected-value-padding:var(--jb-select-selected-value-padding-sm, 0.125rem 0.5625rem 0 0.5625rem);
63
+ --rounded: var(--jb-select-rounded-sm, var(--jb-radius-sm));
64
+ --inline-slots-padding:0.25rem 0.5rem;
65
+ --clear-icon-size: 0.75rem;
66
+ }
67
+
68
+ :host([size="lg"]){
69
+ --height: var(--jb-select-height-lg, 3rem);
70
+ --selected-value-font-size:var(--jb-select-selected-value-font-size-lg, 1.125rem);
71
+ --input-font-size:var(--jb-select-input-font-size-lg, 1.125rem);
72
+ --label-font-size:var(--jb-select-label-font-size-lg, 0.9rem);
73
+ /*0.7 + 0.0875*/
74
+ --message-font-size:var(--jb-select-message-font-size-lg, 0.7875rem);
75
+ --selected-value-padding:var(--jb-select-selected-value-padding-lg, 0.125rem 0.9375rem 0 0.9375rem);
76
+ --rounded: var(--jb-select-rounded-lg, var(--jb-radius-lg));
77
+ --inline-slots-padding:0.5rem 0.75rem;
78
+ }
79
+
80
+ :host([size="xl"]){
81
+ --height: var(--jb-select-height-xl, 4rem);
82
+ --selected-value-font-size:var(--jb-select-selected-value-font-size-xl, 1.25rem);
83
+ --input-font-size:var(--jb-select-input-font-size-xl, 1.25rem);
84
+ --label-font-size:var(--jb-select-label-font-size-xl, 1rem);
85
+ --message-font-size:var(--jb-select-message-font-size-xl, 0.875rem);
86
+ --selected-value-padding:var(--jb-select-selected-value-padding-xl, 0.125rem 1.125rem 0 1.125rem);
87
+ --rounded: var(--jb-select-rounded-xl, var(--jb-radius-xl));
88
+ --inline-slots-padding:0.75rem 1rem;
34
89
  }
package/package.json CHANGED
@@ -16,8 +16,9 @@
16
16
  "web component",
17
17
  "react component"
18
18
  ],
19
- "version": "7.0.1",
19
+ "version": "7.0.3",
20
20
  "bugs": "https://github.com/javadbat/jb-select/issues",
21
+ "homepage": "https://javadbat.github.io/design-system/?path=/story/components-form-elements-jbselect",
21
22
  "license": "MIT",
22
23
  "files": [
23
24
  "LICENSE",
@@ -35,9 +36,9 @@
35
36
  },
36
37
  "dependencies": {
37
38
  "jb-validation": ">=0.4.0",
38
- "jb-button": ">=3.7.0",
39
- "jb-popover": ">=1.5.0",
40
- "jb-core":">=0.22.0"
39
+ "jb-button": ">=3.8.0",
40
+ "jb-popover": ">=1.6.0",
41
+ "jb-core":">=0.24.0"
41
42
  },
42
43
  "devDependencies": {
43
44
  "jb-form":">=0.7.1"
@@ -1,8 +1,9 @@
1
- import React, { CSSProperties } from 'react';
1
+ import React, { type PropsWithChildren } from 'react';
2
2
  import 'jb-select';
3
- import { JBSelectWebComponent } from 'jb-select';
4
- import { EventProps } from './events-hook.js';
3
+ import type { JBSelectWebComponent, SizeVariants } from 'jb-select';
4
+ import { type EventProps } from './events-hook.js';
5
5
  import { type JBSelectAttributes } from './attributes-hook.js';
6
+ import type { JBElementStandardProps } from 'jb-core/react';
6
7
  export type JBSelectEventType<T> = T & {
7
8
  target: JBSelectWebComponent;
8
9
  };
@@ -18,6 +19,7 @@ declare module "react" {
18
19
  required?: string | boolean;
19
20
  message?: string;
20
21
  tabindex?: string;
22
+ size?: string;
21
23
  }
22
24
  }
23
25
  }
@@ -25,9 +27,7 @@ export declare function JBSelect<TValue>(props: Props<TValue>): React.JSX.Elemen
25
27
  export declare namespace JBSelect {
26
28
  var displayName: string;
27
29
  }
28
- export type Props<TValue> = EventProps & JBSelectAttributes<TValue> & {
30
+ export type Props<TValue> = PropsWithChildren<EventProps & JBSelectAttributes<TValue>> & JBElementStandardProps<JBSelectWebComponent, keyof EventProps & JBSelectAttributes<TValue>> & {
29
31
  ref?: React.RefObject<JBSelectWebComponent>;
30
- style?: CSSProperties;
31
- className?: string;
32
- children?: React.ReactNode;
32
+ size?: SizeVariants;
33
33
  };
@@ -1,6 +1,6 @@
1
- import { JBSelectWebComponent, type ValidationValue } from "jb-select";
2
- import { type ValidationItem } from "jb-validation";
3
- import { RefObject } from "react";
1
+ import type { JBSelectWebComponent, ValidationValue } from "jb-select";
2
+ import type { ValidationItem } from "jb-validation";
3
+ import { type RefObject } from "react";
4
4
  export type JBSelectAttributes<TValue> = {
5
5
  validationList?: ValidationItem<ValidationValue<TValue>>[];
6
6
  name?: string;
@@ -1,4 +1,4 @@
1
- import { RefObject } from "react";
1
+ import type { RefObject } from "react";
2
2
  import type { JBSelectWebComponent, JBSelectEventType } from 'jb-select';
3
3
  export type EventProps = {
4
4
  /**
@@ -1,2 +1,2 @@
1
- var e=Object.create,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,l=Object.getOwnPropertyNames,u=Object.getPrototypeOf,n=Object.prototype.hasOwnProperty,c=(e,u,c,a)=>{if(u&&"object"==typeof u||"function"==typeof u)for(var o,s=l(u),i=0,f=s.length;i<f;i++)o=s[i],n.call(e,o)||o===c||t(e,o,{get:(e=>u[e]).bind(null,o),enumerable:!(a=r(u,o))||a.enumerable});return e},a=(r,l,n)=>(n=null!=r?e(u(r)):{},c(!l&&r&&r.__esModule?n:t(n,"default",{value:r,enumerable:!0}),r));const o=a(require("react"));require("jb-select");const s=a(require("jb-core/react")),i=o.default.forwardRef((e,t)=>{let r=(0,o.useRef)(null);return(0,o.useImperativeHandle)(t,()=>r?r.current:void 0,[r]),(0,o.useEffect)(()=>{r.current&&Array.isArray(e.optionList)&&(r.current.optionList=e.optionList)},[e.optionList,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getTitle&&r.current.setCallback("getTitle",e.getTitle)},[e.getTitle,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getValue&&r.current.setCallback("getValue",e.getValue)},[e.getValue,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getContentDOM&&r.current.setCallback("getContentDOM",e.getContentDOM)},[e.getContentDOM,r]),o.default.createElement("jb-option-list",{ref:r})});function f(e){let t=(0,o.useRef)(null);return(0,o.useImperativeHandle)(e.ref,()=>t?t.current:void 0,[t]),(0,s.useEvent)(t,"load",e.onLoad,!0),(0,s.useEvent)(t,"init",e.onInit,!0),(0,s.useEvent)(t,"keyup",e.onKeyUp),(0,s.useEvent)(t,"change",e.onChange),(0,s.useEvent)(t,"input",e.onInput),(0,o.useEffect)(()=>{null!==e.message&&void 0!==e.message?t.current?.setAttribute("message",e.message):t.current?.removeAttribute("message")},[e.message]),(0,o.useEffect)(()=>{t&&t.current&&(t.current.validation.list=e.validationList||[])},[e.validationList]),(0,o.useEffect)(()=>{null!==e.label&&void 0!==e.label?t.current?.setAttribute("label",e.label):t.current?.removeAttribute("label")},[e.label]),(0,o.useEffect)(()=>{null!==e.required&&void 0!==e.required?t.current?.setAttribute("required",""):t.current?.removeAttribute("required")},[e.required]),(0,o.useEffect)(()=>{null!==e.placeholder&&void 0!==e.placeholder&&t.current?.setAttribute("placeholder",e.placeholder)},[e.placeholder]),(0,o.useEffect)(()=>{null!==e.searchPlaceholder&&void 0!==e.searchPlaceholder&&t.current?.setAttribute("search-placeholder",e.searchPlaceholder)},[e.searchPlaceholder]),(0,o.useEffect)(()=>{e.error?t?.current?.setAttribute("error",e.error):t?.current?.removeAttribute("error")},[e.error]),(0,o.useEffect)(()=>{e.name?t?.current?.setAttribute("name",e.name||""):t?.current?.removeAttribute("name")},[e.name]),(0,o.useEffect)(()=>{t.current&&(t.current.value=e.value)},[e.value]),(0,o.useEffect)(()=>{"function"==typeof e.getSelectedValueDOM&&t.current&&t.current&&(t.current.callbacks.getSelectedValueDOM=e.getSelectedValueDOM)},[e.getSelectedValueDOM]),o.default.createElement("jb-select",{style:e.style?e.style:void 0,class:e.className?e.className:"",ref:t},e.children)}i.displayName="JBOptionList",f.displayName="JBSelect";const d=o.default.forwardRef((e,t)=>{let r=(0,o.useRef)(null),{value:l,children:u,className:n,...c}=e;return(0,o.useImperativeHandle)(t,()=>r?r.current:void 0,[r]),(0,o.useEffect)(()=>{r.current&&void 0!==l&&(r.current.value=l)},[l,r]),o.default.createElement("jb-option",{class:n,ref:r,...c},u)});d.displayName="JBOption",exports.JBOption=d,exports.JBOptionList=i,exports.JBSelect=f;
1
+ var e=Object.create,t=Object.defineProperty,r=Object.getOwnPropertyDescriptor,u=Object.getOwnPropertyNames,n=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,n,c,a)=>{if(n&&"object"==typeof n||"function"==typeof n)for(var o,s=u(n),i=0,f=s.length;i<f;i++)o=s[i],l.call(e,o)||o===c||t(e,o,{get:(e=>n[e]).bind(null,o),enumerable:!(a=r(n,o))||a.enumerable});return e},a=(r,u,l)=>(l=null!=r?e(n(r)):{},c(!u&&r&&r.__esModule?l:t(l,"default",{value:r,enumerable:!0}),r));const o=a(require("react"));require("jb-select");const s=a(require("jb-core/react")),i=o.default.forwardRef((e,t)=>{let r=(0,o.useRef)(null);return(0,o.useImperativeHandle)(t,()=>r?r.current:void 0,[r]),(0,o.useEffect)(()=>{r.current&&Array.isArray(e.optionList)&&(r.current.optionList=e.optionList)},[e.optionList,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getTitle&&r.current.setCallback("getTitle",e.getTitle)},[e.getTitle,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getValue&&r.current.setCallback("getValue",e.getValue)},[e.getValue,r]),(0,o.useEffect)(()=>{r.current&&"function"==typeof e.getContentDOM&&r.current.setCallback("getContentDOM",e.getContentDOM)},[e.getContentDOM,r]),o.default.createElement("jb-option-list",{ref:r})});function f(e){var t,r;let u=(0,o.useRef)(null);(0,o.useImperativeHandle)(e.ref,()=>u?u.current:void 0,[u]);let{onChange:n,onInit:l,onInput:c,onKeyUp:a,onLoad:i,error:f,getSelectedValueDOM:d,label:p,name:b,required:v,message:g,placeholder:m,searchPlaceholder:E,validationList:O,value:h,...y}=e;return t={onChange:n,onInit:l,onInput:c,onKeyUp:a,onLoad:i},(0,s.useEvent)(u,"load",t.onLoad,!0),(0,s.useEvent)(u,"init",t.onInit,!0),(0,s.useEvent)(u,"keyup",t.onKeyUp),(0,s.useEvent)(u,"change",t.onChange),(0,s.useEvent)(u,"input",t.onInput),r={error:f,getSelectedValueDOM:d,label:p,name:b,required:v,message:g,placeholder:m,searchPlaceholder:E,validationList:O,value:h},(0,o.useEffect)(()=>{null!==r.message&&void 0!==r.message?u.current?.setAttribute("message",r.message):u.current?.removeAttribute("message")},[r.message]),(0,o.useEffect)(()=>{u?.current&&(u.current.validation.list=r.validationList||[])},[u.current,r.validationList]),(0,o.useEffect)(()=>{null!==r.label&&void 0!==r.label?u.current?.setAttribute("label",r.label):u.current?.removeAttribute("label")},[r.label,u.current]),(0,o.useEffect)(()=>{null!==r.required&&void 0!==r.required?u.current?.setAttribute("required",""):u.current?.removeAttribute("required")},[r.required]),(0,o.useEffect)(()=>{null!==r.placeholder&&void 0!==r.placeholder&&u.current?.setAttribute("placeholder",r.placeholder)},[r.placeholder]),(0,o.useEffect)(()=>{null!==r.searchPlaceholder&&void 0!==r.searchPlaceholder&&u.current?.setAttribute("search-placeholder",r.searchPlaceholder)},[r.searchPlaceholder]),(0,o.useEffect)(()=>{r.error?u?.current?.setAttribute("error",r.error):u?.current?.removeAttribute("error")},[r.error]),(0,o.useEffect)(()=>{r.name?u?.current?.setAttribute("name",r.name||""):u?.current?.removeAttribute("name")},[r.name]),(0,o.useEffect)(()=>{u.current&&(u.current.value=r.value)},[r.value]),(0,o.useEffect)(()=>{"function"==typeof r.getSelectedValueDOM&&u.current&&u.current&&(u.current.callbacks.getSelectedValueDOM=r.getSelectedValueDOM)},[r.getSelectedValueDOM]),o.default.createElement("jb-select",{ref:u,...y},e.children)}i.displayName="JBOptionList",f.displayName="JBSelect";const d=o.default.forwardRef((e,t)=>{let r=(0,o.useRef)(null),{value:u,children:n,className:l,...c}=e;return(0,o.useImperativeHandle)(t,()=>r?r.current:void 0,[r]),(0,o.useEffect)(()=>{r.current&&void 0!==u&&(r.current.value=u)},[u,r]),o.default.createElement("jb-option",{class:l,ref:r,...c},n)});d.displayName="JBOption",exports.JBOption=d,exports.JBOptionList=i,exports.JBSelect=f;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import e,{useEffect as t,useImperativeHandle as r,useRef as l}from"react";import"jb-select";import{useEvent as n}from"jb-core/react";let a=e.forwardRef((n,a)=>{let u=l(null);return r(a,()=>u?u.current:void 0,[u]),t(()=>{u.current&&Array.isArray(n.optionList)&&(u.current.optionList=n.optionList)},[n.optionList,u]),t(()=>{u.current&&"function"==typeof n.getTitle&&u.current.setCallback("getTitle",n.getTitle)},[n.getTitle,u]),t(()=>{u.current&&"function"==typeof n.getValue&&u.current.setCallback("getValue",n.getValue)},[n.getValue,u]),t(()=>{u.current&&"function"==typeof n.getContentDOM&&u.current.setCallback("getContentDOM",n.getContentDOM)},[n.getContentDOM,u]),e.createElement("jb-option-list",{ref:u})});function u(a){var u;let o=l(null);return r(a.ref,()=>o?o.current:void 0,[o]),n(o,"load",a.onLoad,!0),n(o,"init",a.onInit,!0),n(o,"keyup",a.onKeyUp),n(o,"change",a.onChange),n(o,"input",a.onInput),t(()=>{null!==u.message&&void 0!==u.message?o.current?.setAttribute("message",u.message):o.current?.removeAttribute("message")},[(u=a).message]),t(()=>{o&&o.current&&(o.current.validation.list=u.validationList||[])},[u.validationList]),t(()=>{null!==u.label&&void 0!==u.label?o.current?.setAttribute("label",u.label):o.current?.removeAttribute("label")},[u.label]),t(()=>{null!==u.required&&void 0!==u.required?o.current?.setAttribute("required",""):o.current?.removeAttribute("required")},[u.required]),t(()=>{null!==u.placeholder&&void 0!==u.placeholder&&o.current?.setAttribute("placeholder",u.placeholder)},[u.placeholder]),t(()=>{null!==u.searchPlaceholder&&void 0!==u.searchPlaceholder&&o.current?.setAttribute("search-placeholder",u.searchPlaceholder)},[u.searchPlaceholder]),t(()=>{u.error?o?.current?.setAttribute("error",u.error):o?.current?.removeAttribute("error")},[u.error]),t(()=>{u.name?o?.current?.setAttribute("name",u.name||""):o?.current?.removeAttribute("name")},[u.name]),t(()=>{o.current&&(o.current.value=u.value)},[u.value]),t(()=>{"function"==typeof u.getSelectedValueDOM&&o.current&&o.current&&(o.current.callbacks.getSelectedValueDOM=u.getSelectedValueDOM)},[u.getSelectedValueDOM]),e.createElement("jb-select",{style:a.style?a.style:void 0,class:a.className?a.className:"",ref:o},a.children)}a.displayName="JBOptionList",u.displayName="JBSelect";let o=e.forwardRef((n,a)=>{let u=l(null),{value:o,children:c,className:i,...s}=n;return r(a,()=>u?u.current:void 0,[u]),t(()=>{u.current&&void 0!==o&&(u.current.value=o)},[o,u]),e.createElement("jb-option",{class:i,ref:u,...s},c)});o.displayName="JBOption";export{o as JBOption,a as JBOptionList,u as JBSelect};
1
+ import e,{useEffect as t,useImperativeHandle as r,useRef as l}from"react";import"jb-select";import{useEvent as n}from"jb-core/react";let u=e.forwardRef((n,u)=>{let a=l(null);return r(u,()=>a?a.current:void 0,[a]),t(()=>{a.current&&Array.isArray(n.optionList)&&(a.current.optionList=n.optionList)},[n.optionList,a]),t(()=>{a.current&&"function"==typeof n.getTitle&&a.current.setCallback("getTitle",n.getTitle)},[n.getTitle,a]),t(()=>{a.current&&"function"==typeof n.getValue&&a.current.setCallback("getValue",n.getValue)},[n.getValue,a]),t(()=>{a.current&&"function"==typeof n.getContentDOM&&a.current.setCallback("getContentDOM",n.getContentDOM)},[n.getContentDOM,a]),e.createElement("jb-option-list",{ref:a})});function a(u){var a,o;let c=l(null);r(u.ref,()=>c?c.current:void 0,[c]);let{onChange:i,onInit:s,onInput:d,onKeyUp:p,onLoad:b,error:m,getSelectedValueDOM:g,label:v,name:f,required:h,message:A,placeholder:O,searchPlaceholder:y,validationList:L,value:C,...D}=u;return n(c,"load",(a={onChange:i,onInit:s,onInput:d,onKeyUp:p,onLoad:b}).onLoad,!0),n(c,"init",a.onInit,!0),n(c,"keyup",a.onKeyUp),n(c,"change",a.onChange),n(c,"input",a.onInput),o={error:m,getSelectedValueDOM:g,label:v,name:f,required:h,message:A,placeholder:O,searchPlaceholder:y,validationList:L,value:C},t(()=>{null!==o.message&&void 0!==o.message?c.current?.setAttribute("message",o.message):c.current?.removeAttribute("message")},[o.message]),t(()=>{c?.current&&(c.current.validation.list=o.validationList||[])},[c.current,o.validationList]),t(()=>{null!==o.label&&void 0!==o.label?c.current?.setAttribute("label",o.label):c.current?.removeAttribute("label")},[o.label,c.current]),t(()=>{null!==o.required&&void 0!==o.required?c.current?.setAttribute("required",""):c.current?.removeAttribute("required")},[o.required]),t(()=>{null!==o.placeholder&&void 0!==o.placeholder&&c.current?.setAttribute("placeholder",o.placeholder)},[o.placeholder]),t(()=>{null!==o.searchPlaceholder&&void 0!==o.searchPlaceholder&&c.current?.setAttribute("search-placeholder",o.searchPlaceholder)},[o.searchPlaceholder]),t(()=>{o.error?c?.current?.setAttribute("error",o.error):c?.current?.removeAttribute("error")},[o.error]),t(()=>{o.name?c?.current?.setAttribute("name",o.name||""):c?.current?.removeAttribute("name")},[o.name]),t(()=>{c.current&&(c.current.value=o.value)},[o.value]),t(()=>{"function"==typeof o.getSelectedValueDOM&&c.current&&c.current&&(c.current.callbacks.getSelectedValueDOM=o.getSelectedValueDOM)},[o.getSelectedValueDOM]),e.createElement("jb-select",{ref:c,...D},u.children)}u.displayName="JBOptionList",a.displayName="JBSelect";let o=e.forwardRef((n,u)=>{let a=l(null),{value:o,children:c,className:i,...s}=n;return r(u,()=>a?a.current:void 0,[a]),t(()=>{a.current&&void 0!==o&&(a.current.value=o)},[o,a]),e.createElement("jb-option",{class:i,ref:a,...s},c)});o.displayName="JBOption";export{o as JBOption,u as JBOptionList,a as JBSelect};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":";;;;;AAEA,MAAY,+BAAuB,MAAA,WAAqB,CAAA,OAAM,QAAO;CAkBrE,MAAO,UAAM,OAAY,KAAG;AAC1B,qBAAgB,KAAkD,MAAK,UAAA,QAAA,kBAAA,CACvE,OAKA,EAAA;WACM,MAAA;MACF,QAAQ,WAAQ,MAAA,QAAa,MAAM,WAAU,CAC/C,SAAA,QAAA,aAAA,MAAA;CAEF,GAAA,CACE,MAAI;AAGN,WAAU,MAAA;AACV,MAAA,QAAe,kBAAA,MAAA,YAAA,WACT,SAAQ,QAAO,YAAW,YAAc,MAAI,SAAU;KAGxD,MAAM,UACV;WAEI,MAAA;AACF,MAAA,QAAA,kBAAA,MAAA,YAAA,WACE,SAAM,QAAa,YAAW,YAAA,MAAA,SAAA;CAKlC,GAAA,CAQF,MAAa;;;;;;;;;;AC1Cb,SAAgB,UAAU,SAA0C,OAAiB;AACnF,UAAS,SAAS,QAAQ,MAAM,QAAQ,KAAK;AAC7C,UAAS,SAAS,QAAQ,MAAM,QAAQ,KAAK;AAC7C,UAAS,SAAS,SAAS,MAAM,QAAQ;AACzC,UAAS,SAAS,UAAU,MAAM,SAAS;AAC3C,UAAS,SAAS,SAAS,MAAM,QAAQ;AAC3C;;;;ACNA,SAAgB,qBAA6B,SAA0C,OAAiC;AACtH,WAAU,MAAG;AACX,MAAI,MAAM,YAAY,QAAQ,MAAM,mBAClC,SAAQ,SAAS,aAAa,WAAW,MAAM,QAAQ;eAClD,SAAA,gBAAA,UAAA;KAGL,MAAM,OACV,EAAA;WACM,MAAA;MACF,WAAQ,QAAQ,QAClB,SAAA,QAAA,WAAA,OAAA,MAAA,kBAAA,CAAA;CAEF,GAAA,CACE,MAAI;WAEJ,MAAA;YAAO,UAAA,QAAA,MAAA,iBACL,SAAQ,SAAS,aAAA,SAAgB,MAAQ,MAAA;MAEzC,SAAY,SAAC,gBAAA,QAAA;WAIb;WACK,MAAA;MACL,MAAA,aAAiB,QAAA,MAAgB,oBACnC,SAAA,SAAA,aAAA,YAAA,GAAA;MAGF,SAAe,SAAA,gBAAA,WAAA;KAGb,MAAA,QACD,EAAA;AACD,WAAU,MAAG;AACX,MAAI,MAAM,gBAAA,QAAsB,MAAQ,uBACtC,SAAQ,SAAS,aAAa,eAAA,MAAoB,YAAQ;CAE7D,GAAE,CACH,MAAU;WAEN,MAAA;AACF,MAAA,MAAA,sBAAA,QAAA,MAAA,sCAAO,SAAA,aAAA,sBAAA,MAAA,kBAAA;KAGL,MAAM,iBAEV,EAAA;WACM,MAAM;MACR,MAAA,MACF,UAAA,SAAA,aAAA,SAAA,MAAA,MAAA;MACE,UAAS,SAAS,gBAAgB,QAAO;CAE5C,GAAE,CACH,MAAU;WAEN,MAAA;AACF,MAAA,MAAA,KACE,UAAa,SAAA,aAAA,QAAA,MAAA,QAAA,GAAA;MAEX,UAAO,SAAM,gBAAmB,OAAI;KAGtC,MAAM,IACZ,EAAA;;;;;;;;;;;AC1EA,SAAS,SAAA,OAA+C;CAqBxD,MAAM,UAAU,OAAiB,KAAmB;AAClD,qBAAgB,MAA6B,KAAK,MAAA,UAAA,QAAA,kBAAA,CAClD,OAOA,EAAA;AACA,WAAA,SAAA,MAAqB;AACrB,sBACE,SAAA,MAAA;AAIJ,wBAAA,MAAA,cAAA,aAAA;EAAC,OAAA,MAAA,QAAA,MAAA;EAQO,OAAC,MAAW,YAAa,MAAA,YAAA;;;;;;;;AClDjC,MAAY,2BAAuB,MAAA,WAAmB,CAAqC,OAAM,QAAO;CAgBxG,MAAO,UAAM,OAAW,KAAM;CAC5B,MAAM,EAAA,OAAO,UAAwC,UAAK,GAAA,MAAA,GAAA;AAC1D,qBAAa,KAAS,MAAA,UAAc,QAAK,kBAAQ,CACjD,OAMA,EAAA;WACM,MAAA;MACF,QAAQ,WAAQ,iBAClB,SAAA,QAAA,QAAA;CAGF,GAAA,CAKA,OAOM"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,r,l){var u=Object.create,n=Object.defineProperty,c=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,i=(e,t,r,l)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var u,o=a(t),i=0,f=o.length;i<f;i++)u=o[i],s.call(e,u)||u===r||n(e,u,{get:(e=>t[e]).bind(null,u),enumerable:!(l=c(t,u))||l.enumerable});return e},f=(e,t,r)=>(r=null!=e?u(o(e)):{},i(!t&&e&&e.__esModule?r:n(r,"default",{value:e,enumerable:!0}),e));t=f(t),l=f(l);let d=t.default.forwardRef((e,r)=>{let l=(0,t.useRef)(null);return(0,t.useImperativeHandle)(r,()=>l?l.current:void 0,[l]),(0,t.useEffect)(()=>{l.current&&Array.isArray(e.optionList)&&(l.current.optionList=e.optionList)},[e.optionList,l]),(0,t.useEffect)(()=>{l.current&&"function"==typeof e.getTitle&&l.current.setCallback("getTitle",e.getTitle)},[e.getTitle,l]),(0,t.useEffect)(()=>{l.current&&"function"==typeof e.getValue&&l.current.setCallback("getValue",e.getValue)},[e.getValue,l]),(0,t.useEffect)(()=>{l.current&&"function"==typeof e.getContentDOM&&l.current.setCallback("getContentDOM",e.getContentDOM)},[e.getContentDOM,l]),t.default.createElement("jb-option-list",{ref:l})});function p(e){let r=(0,t.useRef)(null);return(0,t.useImperativeHandle)(e.ref,()=>r?r.current:void 0,[r]),(0,l.useEvent)(r,"load",e.onLoad,!0),(0,l.useEvent)(r,"init",e.onInit,!0),(0,l.useEvent)(r,"keyup",e.onKeyUp),(0,l.useEvent)(r,"change",e.onChange),(0,l.useEvent)(r,"input",e.onInput),(0,t.useEffect)(()=>{null!==e.message&&void 0!==e.message?r.current?.setAttribute("message",e.message):r.current?.removeAttribute("message")},[e.message]),(0,t.useEffect)(()=>{r&&r.current&&(r.current.validation.list=e.validationList||[])},[e.validationList]),(0,t.useEffect)(()=>{null!==e.label&&void 0!==e.label?r.current?.setAttribute("label",e.label):r.current?.removeAttribute("label")},[e.label]),(0,t.useEffect)(()=>{null!==e.required&&void 0!==e.required?r.current?.setAttribute("required",""):r.current?.removeAttribute("required")},[e.required]),(0,t.useEffect)(()=>{null!==e.placeholder&&void 0!==e.placeholder&&r.current?.setAttribute("placeholder",e.placeholder)},[e.placeholder]),(0,t.useEffect)(()=>{null!==e.searchPlaceholder&&void 0!==e.searchPlaceholder&&r.current?.setAttribute("search-placeholder",e.searchPlaceholder)},[e.searchPlaceholder]),(0,t.useEffect)(()=>{e.error?r?.current?.setAttribute("error",e.error):r?.current?.removeAttribute("error")},[e.error]),(0,t.useEffect)(()=>{e.name?r?.current?.setAttribute("name",e.name||""):r?.current?.removeAttribute("name")},[e.name]),(0,t.useEffect)(()=>{r.current&&(r.current.value=e.value)},[e.value]),(0,t.useEffect)(()=>{"function"==typeof e.getSelectedValueDOM&&r.current&&r.current&&(r.current.callbacks.getSelectedValueDOM=e.getSelectedValueDOM)},[e.getSelectedValueDOM]),t.default.createElement("jb-select",{style:e.style?e.style:void 0,class:e.className?e.className:"",ref:r},e.children)}d.displayName="JBOptionList",p.displayName="JBSelect";let b=t.default.forwardRef((e,r)=>{let l=(0,t.useRef)(null),{value:u,children:n,className:c,...a}=e;return(0,t.useImperativeHandle)(r,()=>l?l.current:void 0,[l]),(0,t.useEffect)(()=>{l.current&&void 0!==u&&(l.current.value=u)},[u,l]),t.default.createElement("jb-option",{class:c,ref:l,...a},n)});b.displayName="JBOption",e.JBOption=b,e.JBOptionList=d,e.JBSelect=p},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("jb-select"),require("jb-core/react")):"function"==typeof define&&define.amd?define(["exports","react","jb-select","jb-core/react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JBSelectReact={},e.React,e.JBSelect,e.JBCoreReact);
1
+ var e,t;e=this,t=function(e,t,r,u){var l=Object.create,n=Object.defineProperty,c=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,i=Object.prototype.hasOwnProperty,s=(e,t,r,u)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var l,o=a(t),s=0,f=o.length;s<f;s++)l=o[s],i.call(e,l)||l===r||n(e,l,{get:(e=>t[e]).bind(null,l),enumerable:!(u=c(t,l))||u.enumerable});return e},f=(e,t,r)=>(r=null!=e?l(o(e)):{},s(!t&&e&&e.__esModule?r:n(r,"default",{value:e,enumerable:!0}),e));t=f(t),u=f(u);let d=t.default.forwardRef((e,r)=>{let u=(0,t.useRef)(null);return(0,t.useImperativeHandle)(r,()=>u?u.current:void 0,[u]),(0,t.useEffect)(()=>{u.current&&Array.isArray(e.optionList)&&(u.current.optionList=e.optionList)},[e.optionList,u]),(0,t.useEffect)(()=>{u.current&&"function"==typeof e.getTitle&&u.current.setCallback("getTitle",e.getTitle)},[e.getTitle,u]),(0,t.useEffect)(()=>{u.current&&"function"==typeof e.getValue&&u.current.setCallback("getValue",e.getValue)},[e.getValue,u]),(0,t.useEffect)(()=>{u.current&&"function"==typeof e.getContentDOM&&u.current.setCallback("getContentDOM",e.getContentDOM)},[e.getContentDOM,u]),t.default.createElement("jb-option-list",{ref:u})});function p(e){var r,l;let n=(0,t.useRef)(null);(0,t.useImperativeHandle)(e.ref,()=>n?n.current:void 0,[n]);let{onChange:c,onInit:a,onInput:o,onKeyUp:i,onLoad:s,error:f,getSelectedValueDOM:d,label:p,name:b,required:v,message:g,placeholder:m,searchPlaceholder:h,validationList:y,value:E,...O}=e;return r={onChange:c,onInit:a,onInput:o,onKeyUp:i,onLoad:s},(0,u.useEvent)(n,"load",r.onLoad,!0),(0,u.useEvent)(n,"init",r.onInit,!0),(0,u.useEvent)(n,"keyup",r.onKeyUp),(0,u.useEvent)(n,"change",r.onChange),(0,u.useEvent)(n,"input",r.onInput),l={error:f,getSelectedValueDOM:d,label:p,name:b,required:v,message:g,placeholder:m,searchPlaceholder:h,validationList:y,value:E},(0,t.useEffect)(()=>{null!==l.message&&void 0!==l.message?n.current?.setAttribute("message",l.message):n.current?.removeAttribute("message")},[l.message]),(0,t.useEffect)(()=>{n?.current&&(n.current.validation.list=l.validationList||[])},[n.current,l.validationList]),(0,t.useEffect)(()=>{null!==l.label&&void 0!==l.label?n.current?.setAttribute("label",l.label):n.current?.removeAttribute("label")},[l.label,n.current]),(0,t.useEffect)(()=>{null!==l.required&&void 0!==l.required?n.current?.setAttribute("required",""):n.current?.removeAttribute("required")},[l.required]),(0,t.useEffect)(()=>{null!==l.placeholder&&void 0!==l.placeholder&&n.current?.setAttribute("placeholder",l.placeholder)},[l.placeholder]),(0,t.useEffect)(()=>{null!==l.searchPlaceholder&&void 0!==l.searchPlaceholder&&n.current?.setAttribute("search-placeholder",l.searchPlaceholder)},[l.searchPlaceholder]),(0,t.useEffect)(()=>{l.error?n?.current?.setAttribute("error",l.error):n?.current?.removeAttribute("error")},[l.error]),(0,t.useEffect)(()=>{l.name?n?.current?.setAttribute("name",l.name||""):n?.current?.removeAttribute("name")},[l.name]),(0,t.useEffect)(()=>{n.current&&(n.current.value=l.value)},[l.value]),(0,t.useEffect)(()=>{"function"==typeof l.getSelectedValueDOM&&n.current&&n.current&&(n.current.callbacks.getSelectedValueDOM=l.getSelectedValueDOM)},[l.getSelectedValueDOM]),t.default.createElement("jb-select",{ref:n,...O},e.children)}d.displayName="JBOptionList",p.displayName="JBSelect";let b=t.default.forwardRef((e,r)=>{let u=(0,t.useRef)(null),{value:l,children:n,className:c,...a}=e;return(0,t.useImperativeHandle)(r,()=>u?u.current:void 0,[u]),(0,t.useEffect)(()=>{u.current&&void 0!==l&&(u.current.value=l)},[l,u]),t.default.createElement("jb-option",{class:c,ref:u,...a},n)});b.displayName="JBOption",e.JBOption=b,e.JBOptionList=d,e.JBSelect=p},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("jb-select"),require("jb-core/react")):"function"==typeof define&&define.amd?define(["exports","react","jb-select","jb-core/react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JBSelectReact={},e.React,e.JBSelect,e.JBCoreReact);
2
2
  //# sourceMappingURL=index.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","names":[],"sources":["../lib/JBOptionList.tsx","../lib/events-hook.ts","../lib/attributes-hook.ts","../lib/JBSelect.tsx","../lib/JBOption.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  'use client'
2
2
  /* eslint-disable react/display-name */
3
- import React, { useRef, useImperativeHandle,CSSProperties } from 'react';
3
+ import React, { useRef, useImperativeHandle, type PropsWithChildren } from 'react';
4
4
  import 'jb-select';
5
5
  // eslint-disable-next-line no-duplicate-imports
6
- import { JBSelectWebComponent } from 'jb-select';
7
- import { EventProps, useEvents } from './events-hook.js';
6
+ import type { JBSelectWebComponent, SizeVariants } from 'jb-select';
7
+ import { type EventProps, useEvents } from './events-hook.js';
8
8
  import { useJBSelectAttribute, type JBSelectAttributes } from './attributes-hook.js';
9
+ import type { JBElementStandardProps } from 'jb-core/react';
9
10
  export type JBSelectEventType<T> = T & {
10
11
  target: JBSelectWebComponent
11
12
  }
@@ -22,7 +23,7 @@ declare module "react" {
22
23
  required?:string | boolean,
23
24
  message?:string,
24
25
  tabindex?:string,
25
- // ref:React.RefObject<JBDateInputWebComponent>,
26
+ size?:string,
26
27
  }
27
28
  }
28
29
  }
@@ -33,21 +34,18 @@ export function JBSelect<TValue>(props:Props<TValue>) {
33
34
  () => (element ? element.current : undefined),
34
35
  [element],
35
36
  );
36
-
37
-
38
- useEvents(element,props);
39
- useJBSelectAttribute(element,props);
37
+ const {onChange,onInit,onInput,onKeyUp,onLoad,error,getSelectedValueDOM,label,name,required,message,placeholder,searchPlaceholder,validationList,value, ...otherProps} = props;
38
+ useEvents(element,{onChange,onInit,onInput,onKeyUp,onLoad});
39
+ useJBSelectAttribute(element,{error,getSelectedValueDOM,label,name,required,message,placeholder,searchPlaceholder,validationList,value});
40
40
  return (
41
- <jb-select style={props.style?props.style:undefined} class={props.className?props.className:""} ref={element}>
41
+ <jb-select ref={element} {...otherProps}>
42
42
  {props.children}
43
43
  </jb-select>
44
44
  );
45
45
  };
46
46
 
47
- export type Props<TValue> = EventProps & JBSelectAttributes<TValue> & {
47
+ export type Props<TValue> = PropsWithChildren<EventProps & JBSelectAttributes<TValue>> & JBElementStandardProps<JBSelectWebComponent, keyof EventProps & JBSelectAttributes<TValue>> & {
48
48
  ref?: React.RefObject<JBSelectWebComponent>,
49
- style?:CSSProperties,
50
- className?: string,
51
- children?:React.ReactNode,
49
+ size?: SizeVariants,
52
50
  }
53
51
  JBSelect.displayName = 'JBSelect';
@@ -1,6 +1,6 @@
1
- import { JBSelectWebComponent, type ValidationValue } from "jb-select";
2
- import { type ValidationItem } from "jb-validation";
3
- import { RefObject, useEffect } from "react";
1
+ import type { JBSelectWebComponent, ValidationValue } from "jb-select";
2
+ import type { ValidationItem } from "jb-validation";
3
+ import { type RefObject, useEffect } from "react";
4
4
 
5
5
  export type JBSelectAttributes<TValue> = {
6
6
  validationList?: ValidationItem<ValidationValue<TValue>>[],
@@ -23,18 +23,20 @@ export function useJBSelectAttribute<TValue>(element: RefObject<JBSelectWebCompo
23
23
  element.current?.removeAttribute("message");
24
24
  }
25
25
  }, [props.message]);
26
+
26
27
  useEffect(() => {
27
- if (element && element.current) {
28
+ if (element?.current) {
28
29
  element.current.validation.list = props.validationList || [];
29
30
  }
30
- }, [props.validationList]);
31
+ }, [element.current, props.validationList]);
32
+
31
33
  useEffect(() => {
32
34
  if (props.label !== null && props.label !== undefined) {
33
35
  element.current?.setAttribute("label", props.label);
34
36
  } else {
35
37
  element.current?.removeAttribute("label");
36
38
  }
37
- }, [props.label]);
39
+ }, [props.label, element.current]);
38
40
 
39
41
  useEffect(() => {
40
42
  if (props.required !== null && props.required !== undefined) {
@@ -1,5 +1,5 @@
1
1
  import { useEvent } from "jb-core/react";
2
- import { RefObject } from "react";
2
+ import type { RefObject } from "react";
3
3
  import type { JBSelectWebComponent, JBSelectEventType } from 'jb-select';
4
4
 
5
5
  export type EventProps = {