@blocklet/labels 1.6.84 → 1.6.86

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -800,7 +800,8 @@ function GithubLabelPicker({
800
800
  actions,
801
801
  trigger,
802
802
  multiple = true,
803
- updateImmediately = true
803
+ updateImmediately = true,
804
+ excludes = []
804
805
  }) {
805
806
  const { locale } = useLocaleContext();
806
807
  const { flattenedLabels: labels, getLabelsByIds, loading, createLabel } = LabelsContainer.useContainer();
@@ -812,6 +813,10 @@ function GithubLabelPicker({
812
813
  () => labels.some((x) => x.data.getName(locale).toLowerCase() === inputValue.toLowerCase()),
813
814
  [inputValue, labels, locale]
814
815
  );
816
+ const filteredLabels = useMemo(() => {
817
+ const excludesSet = new Set(excludes);
818
+ return labels.filter((x) => !excludesSet.has(x.data.id));
819
+ }, [labels]);
815
820
  const theme = useTheme();
816
821
  const handleClick = (event) => {
817
822
  event.preventDefault();
@@ -981,11 +986,11 @@ function GithubLabelPicker({
981
986
  }
982
987
  }
983
988
  )),
984
- options: [...labels].sort((a, b) => {
989
+ options: [...filteredLabels].sort((a, b) => {
985
990
  let ai = value.indexOf(a.data.id);
986
- ai = ai === -1 ? value.length + labels.indexOf(a) : ai;
991
+ ai = ai === -1 ? value.length + filteredLabels.indexOf(a) : ai;
987
992
  let bi = value.indexOf(b.data.id);
988
- bi = bi === -1 ? value.length + labels.indexOf(b) : bi;
993
+ bi = bi === -1 ? value.length + filteredLabels.indexOf(b) : bi;
989
994
  return ai - bi;
990
995
  }),
991
996
  getOptionLabel: (option) => option.data.getName(locale),
package/dist/index.umd.js CHANGED
@@ -788,7 +788,8 @@ var __publicField = (obj, key, value) => {
788
788
  actions,
789
789
  trigger,
790
790
  multiple = true,
791
- updateImmediately = true
791
+ updateImmediately = true,
792
+ excludes = []
792
793
  }) {
793
794
  const { locale } = context.useLocaleContext();
794
795
  const { flattenedLabels: labels, getLabelsByIds, loading, createLabel } = LabelsContainer.useContainer();
@@ -800,6 +801,10 @@ var __publicField = (obj, key, value) => {
800
801
  () => labels.some((x) => x.data.getName(locale).toLowerCase() === inputValue.toLowerCase()),
801
802
  [inputValue, labels, locale]
802
803
  );
804
+ const filteredLabels = react.useMemo(() => {
805
+ const excludesSet = new Set(excludes);
806
+ return labels.filter((x) => !excludesSet.has(x.data.id));
807
+ }, [labels]);
803
808
  const theme = material.useTheme();
804
809
  const handleClick = (event) => {
805
810
  event.preventDefault();
@@ -969,11 +974,11 @@ var __publicField = (obj, key, value) => {
969
974
  }
970
975
  }
971
976
  )),
972
- options: [...labels].sort((a, b) => {
977
+ options: [...filteredLabels].sort((a, b) => {
973
978
  let ai = value.indexOf(a.data.id);
974
- ai = ai === -1 ? value.length + labels.indexOf(a) : ai;
979
+ ai = ai === -1 ? value.length + filteredLabels.indexOf(a) : ai;
975
980
  let bi = value.indexOf(b.data.id);
976
- bi = bi === -1 ? value.length + labels.indexOf(b) : bi;
981
+ bi = bi === -1 ? value.length + filteredLabels.indexOf(b) : bi;
977
982
  return ai - bi;
978
983
  }),
979
984
  getOptionLabel: (option) => option.data.getName(locale),
@@ -10,5 +10,6 @@ export interface GithubLabelPickerProps {
10
10
  trigger?: React.ReactNode;
11
11
  multiple?: boolean;
12
12
  updateImmediately?: boolean;
13
+ excludes?: string[];
13
14
  }
14
- export declare function GithubLabelPicker({ value, onChange, title, noLabelsText, buttonSx, actions, trigger, multiple, updateImmediately, }: GithubLabelPickerProps): import("react/jsx-runtime").JSX.Element | null;
15
+ export declare function GithubLabelPicker({ value, onChange, title, noLabelsText, buttonSx, actions, trigger, multiple, updateImmediately, excludes, }: GithubLabelPickerProps): import("react/jsx-runtime").JSX.Element | null;
package/dist/types.d.ts CHANGED
@@ -18,6 +18,7 @@ export interface LabelsResponse {
18
18
  export type FetchLabels = () => Promise<LabelsResponse>;
19
19
  export interface CreateOrUpdateLabelPayload extends Omit<BaseLabel, 'id'> {
20
20
  id?: string;
21
+ slug?: string;
21
22
  parentId?: string;
22
23
  translation?: {
23
24
  [locale: string]: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blocklet/labels",
3
- "version": "1.6.84",
3
+ "version": "1.6.86",
4
4
  "files": [
5
5
  "dist"
6
6
  ],
@@ -28,7 +28,7 @@
28
28
  "access": "public"
29
29
  },
30
30
  "dependencies": {
31
- "@blocklet/translation-input": "1.6.84",
31
+ "@blocklet/translation-input": "1.6.86",
32
32
  "@emotion/css": "^11.10.5",
33
33
  "@emotion/react": "^11.10.5",
34
34
  "@emotion/styled": "^11.10.5",
@@ -80,5 +80,5 @@
80
80
  "resolutions": {
81
81
  "react": "^18.2.0"
82
82
  },
83
- "gitHead": "cf45e40debb6a4d53515f293bf2757dc6038f414"
83
+ "gitHead": "4a7fb600951cb18aff9b774a3198635de72256e7"
84
84
  }