@leexi/shared 0.3.6 → 0.3.8

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.
@@ -1,6 +1,5 @@
1
1
  import js from "@eslint/js";
2
- import stylisticJS from "@stylistic/eslint-plugin-js";
3
- import stylisticTS from "@stylistic/eslint-plugin-ts";
2
+ import stylistic from "@stylistic/eslint-plugin";
4
3
  import globals from "globals";
5
4
  import tseslint from "typescript-eslint";
6
5
  export default [
@@ -19,7 +18,7 @@ export default [
19
18
  }
20
19
  },
21
20
  plugins: {
22
- "@stylistic/js": stylisticJS
21
+ "@stylistic": stylistic
23
22
  },
24
23
  rules: {
25
24
  "arrow-body-style": ["error", "as-needed"],
@@ -35,33 +34,33 @@ export default [
35
34
  destructuring: "all"
36
35
  }],
37
36
  "prefer-template": "error",
38
- "@stylistic/js/array-bracket-spacing": ["error", "never"],
39
- "@stylistic/js/arrow-parens": ["error", "as-needed"],
40
- "@stylistic/js/comma-dangle": ["error", "always-multiline"],
41
- "@stylistic/js/comma-spacing": "error",
42
- "@stylistic/js/eol-last": ["error", "always"],
43
- "@stylistic/js/indent": ["error", 2, {
37
+ "@stylistic/array-bracket-spacing": ["error", "never"],
38
+ "@stylistic/arrow-parens": ["error", "as-needed"],
39
+ "@stylistic/comma-dangle": ["error", "always-multiline"],
40
+ "@stylistic/comma-spacing": "error",
41
+ "@stylistic/eol-last": ["error", "always"],
42
+ "@stylistic/indent": ["error", 2, {
44
43
  SwitchCase: 1
45
44
  }],
46
- "@stylistic/js/key-spacing": "error",
47
- "@stylistic/js/keyword-spacing": "error",
48
- "@stylistic/js/multiline-ternary": ["error", "never"],
49
- "@stylistic/js/no-multi-spaces": "error",
50
- "@stylistic/js/no-multiple-empty-lines": ["error", {
45
+ "@stylistic/key-spacing": "error",
46
+ "@stylistic/keyword-spacing": "error",
47
+ "@stylistic/multiline-ternary": ["error", "never"],
48
+ "@stylistic/no-multi-spaces": "error",
49
+ "@stylistic/no-multiple-empty-lines": ["error", {
51
50
  max: 1
52
51
  }],
53
- "@stylistic/js/no-trailing-spaces": "error",
54
- "@stylistic/js/object-curly-spacing": ["error", "always"],
55
- "@stylistic/js/quote-props": ["error", "consistent-as-needed"],
56
- "@stylistic/js/quotes": ["error", "single"],
57
- "@stylistic/js/semi": ["error", "always"],
58
- "@stylistic/js/semi-spacing": "error",
59
- "@stylistic/js/space-before-blocks": ["error", "always"],
60
- "@stylistic/js/space-before-function-paren": ["error", "always"],
61
- "@stylistic/js/space-in-parens": ["error", "never"],
62
- "@stylistic/js/space-infix-ops": "error",
63
- "@stylistic/js/spaced-comment": "error",
64
- "@stylistic/js/template-curly-spacing": ["error", "never"],
52
+ "@stylistic/no-trailing-spaces": "error",
53
+ "@stylistic/object-curly-spacing": ["error", "always"],
54
+ "@stylistic/quote-props": ["error", "consistent-as-needed"],
55
+ "@stylistic/quotes": ["error", "single"],
56
+ "@stylistic/semi": ["error", "always"],
57
+ "@stylistic/semi-spacing": "error",
58
+ "@stylistic/space-before-blocks": ["error", "always"],
59
+ "@stylistic/space-before-function-paren": ["error", "always"],
60
+ "@stylistic/space-in-parens": ["error", "never"],
61
+ "@stylistic/space-infix-ops": "error",
62
+ "@stylistic/spaced-comment": "error",
63
+ "@stylistic/template-curly-spacing": ["error", "never"],
65
64
  "@typescript-eslint/no-unused-expressions": "off",
66
65
  "@typescript-eslint/no-unused-vars": ["error", {
67
66
  argsIgnorePattern: "^_",
@@ -70,41 +69,6 @@ export default [
70
69
  }]
71
70
  }
72
71
  },
73
- // typescript
74
- {
75
- files: ["**/*.ts", "**/*.vue"],
76
- plugins: {
77
- "@stylistic/ts": stylisticTS
78
- },
79
- rules: {
80
- "@stylistic/js/comma-dangle": "off",
81
- "@stylistic/js/comma-spacing": "off",
82
- "@stylistic/js/indent": "off",
83
- "@stylistic/js/key-spacing": "off",
84
- "@stylistic/js/keyword-spacing": "off",
85
- "@stylistic/js/object-curly-spacing": "off",
86
- "@stylistic/js/quote-props": "off",
87
- "@stylistic/js/quotes": "off",
88
- "@stylistic/js/semi": "off",
89
- "@stylistic/js/space-before-blocks": "off",
90
- "@stylistic/js/space-before-function-paren": "off",
91
- "@stylistic/js/space-infix-ops": "off",
92
- "@stylistic/ts/comma-dangle": ["error", "always-multiline"],
93
- "@stylistic/ts/comma-spacing": "error",
94
- "@stylistic/ts/indent": ["error", 2, {
95
- SwitchCase: 1
96
- }],
97
- "@stylistic/ts/key-spacing": "error",
98
- "@stylistic/ts/keyword-spacing": "error",
99
- "@stylistic/ts/object-curly-spacing": ["error", "always"],
100
- "@stylistic/ts/quote-props": ["error", "consistent-as-needed"],
101
- "@stylistic/ts/quotes": ["error", "single"],
102
- "@stylistic/ts/semi": ["error", "always"],
103
- "@stylistic/ts/space-before-blocks": ["error", "always"],
104
- "@stylistic/ts/space-before-function-paren": ["error", "always"],
105
- "@stylistic/ts/space-infix-ops": "error"
106
- }
107
- },
108
72
  // sort-keys
109
73
  {
110
74
  files: ["**/*.config.{js,ts}", "**/locales/**/*.js"],
@@ -7,6 +7,7 @@ declare const _default: ({
7
7
  __filename: false;
8
8
  AbortController: false;
9
9
  AbortSignal: false;
10
+ AsyncDisposableStack: false;
10
11
  atob: false;
11
12
  Blob: false;
12
13
  BroadcastChannel: false;
@@ -25,6 +26,7 @@ declare const _default: ({
25
26
  CryptoKey: false;
26
27
  CustomEvent: false;
27
28
  DecompressionStream: false;
29
+ DisposableStack: false;
28
30
  DOMException: false;
29
31
  Event: false;
30
32
  EventTarget: false;
@@ -64,6 +66,7 @@ declare const _default: ({
64
66
  setTimeout: false;
65
67
  structuredClone: false;
66
68
  SubtleCrypto: false;
69
+ SuppressedError: false;
67
70
  TextDecoder: false;
68
71
  TextDecoderStream: false;
69
72
  TextEncoder: false;
@@ -71,6 +74,7 @@ declare const _default: ({
71
74
  TransformStream: false;
72
75
  TransformStreamDefaultController: false;
73
76
  URL: false;
77
+ URLPattern: false;
74
78
  URLSearchParams: false;
75
79
  WebAssembly: false;
76
80
  WebSocket: false;
@@ -83,6 +87,7 @@ declare const _default: ({
83
87
  addEventListener: false;
84
88
  ai: false;
85
89
  AI: false;
90
+ AICreateMonitor: false;
86
91
  AITextSession: false;
87
92
  alert: false;
88
93
  AnalyserNode: false;
@@ -154,11 +159,13 @@ declare const _default: ({
154
159
  CharacterData: false;
155
160
  clientInformation: false;
156
161
  Clipboard: false;
162
+ ClipboardChangeEvent: false;
157
163
  ClipboardEvent: false;
158
164
  ClipboardItem: false;
159
165
  close: false;
160
166
  closed: false;
161
167
  CloseWatcher: false;
168
+ CommandEvent: false;
162
169
  Comment: false;
163
170
  CompositionEvent: false;
164
171
  confirm: false;
@@ -171,11 +178,13 @@ declare const _default: ({
171
178
  CookieStore: false;
172
179
  CookieStoreManager: false;
173
180
  createImageBitmap: false;
181
+ CreateMonitor: false;
174
182
  Credential: false;
175
183
  credentialless: false;
176
184
  CredentialsContainer: false;
177
185
  CropTarget: false;
178
186
  crossOriginIsolated: false;
187
+ CSPViolationReportBody: false;
179
188
  CSS: false;
180
189
  CSSAnimation: false;
181
190
  CSSConditionRule: false;
@@ -251,6 +260,7 @@ declare const _default: ({
251
260
  DeviceMotionEventRotationRate: false;
252
261
  DeviceOrientationEvent: false;
253
262
  devicePixelRatio: false;
263
+ DevicePosture: false;
254
264
  dispatchEvent: false;
255
265
  document: false;
256
266
  Document: false;
@@ -305,9 +315,9 @@ declare const _default: ({
305
315
  FileSystemFileEntry: false;
306
316
  FileSystemFileHandle: false;
307
317
  FileSystemHandle: false;
318
+ FileSystemObserver: false;
308
319
  FileSystemWritableFileStream: false;
309
320
  find: false;
310
- Float16Array: false;
311
321
  focus: false;
312
322
  FocusEvent: false;
313
323
  FontData: false;
@@ -442,6 +452,7 @@ declare const _default: ({
442
452
  HTMLProgressElement: false;
443
453
  HTMLQuoteElement: false;
444
454
  HTMLScriptElement: false;
455
+ HTMLSelectedContentElement: false;
445
456
  HTMLSelectElement: false;
446
457
  HTMLSlotElement: false;
447
458
  HTMLSourceElement: false;
@@ -493,6 +504,7 @@ declare const _default: ({
493
504
  InputDeviceCapabilities: false;
494
505
  InputDeviceInfo: false;
495
506
  InputEvent: false;
507
+ IntegrityViolationReportBody: false;
496
508
  IntersectionObserver: false;
497
509
  IntersectionObserverEntry: false;
498
510
  isSecureContext: false;
@@ -500,6 +512,7 @@ declare const _default: ({
500
512
  KeyboardEvent: false;
501
513
  KeyboardLayoutMap: false;
502
514
  KeyframeEffect: false;
515
+ LanguageDetector: false;
503
516
  LargestContentfulPaint: false;
504
517
  LaunchParams: false;
505
518
  launchQueue: false;
@@ -592,6 +605,7 @@ declare const _default: ({
592
605
  NotifyPaintEvent: false;
593
606
  NotRestoredReasonDetails: false;
594
607
  NotRestoredReasons: false;
608
+ Observable: false;
595
609
  OfflineAudioCompletionEvent: false;
596
610
  OfflineAudioContext: false;
597
611
  offscreenBuffering: false;
@@ -619,6 +633,7 @@ declare const _default: ({
619
633
  onchange: true;
620
634
  onclick: true;
621
635
  onclose: true;
636
+ oncommand: true;
622
637
  oncontentvisibilityautostatechange: true;
623
638
  oncontextlost: true;
624
639
  oncontextmenu: true;
@@ -791,12 +806,14 @@ declare const _default: ({
791
806
  PushSubscription: false;
792
807
  PushSubscriptionOptions: false;
793
808
  queryLocalFonts: false;
809
+ QuotaExceededError: false;
794
810
  RadioNodeList: false;
795
811
  Range: false;
796
812
  registerProcessor: false;
797
813
  RelativeOrientationSensor: false;
798
814
  RemotePlayback: false;
799
815
  removeEventListener: false;
816
+ ReportBody: false;
800
817
  reportError: false;
801
818
  ReportingObserver: false;
802
819
  requestAnimationFrame: false;
@@ -806,6 +823,7 @@ declare const _default: ({
806
823
  ResizeObserverEntry: false;
807
824
  ResizeObserverSize: false;
808
825
  resizeTo: false;
826
+ RestrictionTarget: false;
809
827
  RTCCertificate: false;
810
828
  RTCDataChannel: false;
811
829
  RTCDataChannelEvent: false;
@@ -864,6 +882,11 @@ declare const _default: ({
864
882
  ShadowRoot: false;
865
883
  sharedStorage: false;
866
884
  SharedStorage: false;
885
+ SharedStorageAppendMethod: false;
886
+ SharedStorageClearMethod: false;
887
+ SharedStorageDeleteMethod: false;
888
+ SharedStorageModifierMethod: false;
889
+ SharedStorageSetMethod: false;
867
890
  SharedStorageWorklet: false;
868
891
  SharedWorker: false;
869
892
  showDirectoryPicker: false;
@@ -894,6 +917,8 @@ declare const _default: ({
894
917
  StyleSheet: false;
895
918
  StyleSheetList: false;
896
919
  SubmitEvent: false;
920
+ Subscriber: false;
921
+ Summarizer: false;
897
922
  SVGAElement: false;
898
923
  SVGAngle: false;
899
924
  SVGAnimatedAngle: false;
@@ -1017,6 +1042,7 @@ declare const _default: ({
1017
1042
  TouchList: false;
1018
1043
  TrackEvent: false;
1019
1044
  TransitionEvent: false;
1045
+ Translator: false;
1020
1046
  TreeWalker: false;
1021
1047
  TrustedHTML: false;
1022
1048
  TrustedScript: false;
@@ -1025,7 +1051,6 @@ declare const _default: ({
1025
1051
  TrustedTypePolicyFactory: false;
1026
1052
  trustedTypes: false;
1027
1053
  UIEvent: false;
1028
- URLPattern: false;
1029
1054
  USB: false;
1030
1055
  USBAlternateInterface: false;
1031
1056
  USBConfiguration: false;
@@ -1046,6 +1071,8 @@ declare const _default: ({
1046
1071
  VideoEncoder: false;
1047
1072
  VideoFrame: false;
1048
1073
  VideoPlaybackQuality: false;
1074
+ viewport: false;
1075
+ Viewport: false;
1049
1076
  ViewTimeline: false;
1050
1077
  ViewTransition: false;
1051
1078
  ViewTransitionTypeSet: false;
@@ -1087,6 +1114,7 @@ declare const _default: ({
1087
1114
  WebTransportSendStream: false;
1088
1115
  WGSLLanguageFeatures: false;
1089
1116
  WheelEvent: false;
1117
+ when: false;
1090
1118
  window: false;
1091
1119
  Window: false;
1092
1120
  WindowControlsOverlay: false;
@@ -1148,15 +1176,10 @@ declare const _default: ({
1148
1176
  };
1149
1177
  };
1150
1178
  plugins: {
1151
- '@stylistic/js': {
1152
- rules: import("@stylistic/eslint-plugin-js").Rules;
1153
- configs: {
1154
- "disable-legacy": import("eslint").Linter.Config;
1155
- "all": import("eslint").Linter.Config;
1156
- "all-flat": import("eslint").Linter.Config;
1157
- };
1179
+ '@stylistic': {
1180
+ rules: import("@stylistic/eslint-plugin").Rules;
1181
+ configs: import("eslint").ESLint.Plugin["configs"] & import("@stylistic/eslint-plugin").Configs;
1158
1182
  };
1159
- '@stylistic/ts'?: undefined;
1160
1183
  };
1161
1184
  rules: {
1162
1185
  'arrow-body-style': string[];
@@ -1172,117 +1195,42 @@ declare const _default: ({
1172
1195
  destructuring: string;
1173
1196
  })[];
1174
1197
  'prefer-template': string;
1175
- '@stylistic/js/array-bracket-spacing': string[];
1176
- '@stylistic/js/arrow-parens': string[];
1177
- '@stylistic/js/comma-dangle': string[];
1178
- '@stylistic/js/comma-spacing': string;
1179
- '@stylistic/js/eol-last': string[];
1180
- '@stylistic/js/indent': (string | number | {
1198
+ '@stylistic/array-bracket-spacing': string[];
1199
+ '@stylistic/arrow-parens': string[];
1200
+ '@stylistic/comma-dangle': string[];
1201
+ '@stylistic/comma-spacing': string;
1202
+ '@stylistic/eol-last': string[];
1203
+ '@stylistic/indent': (string | number | {
1181
1204
  SwitchCase: number;
1182
1205
  })[];
1183
- '@stylistic/js/key-spacing': string;
1184
- '@stylistic/js/keyword-spacing': string;
1185
- '@stylistic/js/multiline-ternary': string[];
1186
- '@stylistic/js/no-multi-spaces': string;
1187
- '@stylistic/js/no-multiple-empty-lines': (string | {
1206
+ '@stylistic/key-spacing': string;
1207
+ '@stylistic/keyword-spacing': string;
1208
+ '@stylistic/multiline-ternary': string[];
1209
+ '@stylistic/no-multi-spaces': string;
1210
+ '@stylistic/no-multiple-empty-lines': (string | {
1188
1211
  max: number;
1189
1212
  })[];
1190
- '@stylistic/js/no-trailing-spaces': string;
1191
- '@stylistic/js/object-curly-spacing': string[];
1192
- '@stylistic/js/quote-props': string[];
1193
- '@stylistic/js/quotes': string[];
1194
- '@stylistic/js/semi': string[];
1195
- '@stylistic/js/semi-spacing': string;
1196
- '@stylistic/js/space-before-blocks': string[];
1197
- '@stylistic/js/space-before-function-paren': string[];
1198
- '@stylistic/js/space-in-parens': string[];
1199
- '@stylistic/js/space-infix-ops': string;
1200
- '@stylistic/js/spaced-comment': string;
1201
- '@stylistic/js/template-curly-spacing': string[];
1213
+ '@stylistic/no-trailing-spaces': string;
1214
+ '@stylistic/object-curly-spacing': string[];
1215
+ '@stylistic/quote-props': string[];
1216
+ '@stylistic/quotes': string[];
1217
+ '@stylistic/semi': string[];
1218
+ '@stylistic/semi-spacing': string;
1219
+ '@stylistic/space-before-blocks': string[];
1220
+ '@stylistic/space-before-function-paren': string[];
1221
+ '@stylistic/space-in-parens': string[];
1222
+ '@stylistic/space-infix-ops': string;
1223
+ '@stylistic/spaced-comment': string;
1224
+ '@stylistic/template-curly-spacing': string[];
1202
1225
  '@typescript-eslint/no-unused-expressions': string;
1203
1226
  '@typescript-eslint/no-unused-vars': (string | {
1204
1227
  argsIgnorePattern: string;
1205
1228
  destructuredArrayIgnorePattern: string;
1206
1229
  ignoreRestSiblings: boolean;
1207
1230
  })[];
1208
- '@stylistic/ts/comma-dangle'?: undefined;
1209
- '@stylistic/ts/comma-spacing'?: undefined;
1210
- '@stylistic/ts/indent'?: undefined;
1211
- '@stylistic/ts/key-spacing'?: undefined;
1212
- '@stylistic/ts/keyword-spacing'?: undefined;
1213
- '@stylistic/ts/object-curly-spacing'?: undefined;
1214
- '@stylistic/ts/quote-props'?: undefined;
1215
- '@stylistic/ts/quotes'?: undefined;
1216
- '@stylistic/ts/semi'?: undefined;
1217
- '@stylistic/ts/space-before-blocks'?: undefined;
1218
- '@stylistic/ts/space-before-function-paren'?: undefined;
1219
- '@stylistic/ts/space-infix-ops'?: undefined;
1220
1231
  'sort-keys'?: undefined;
1221
1232
  };
1222
1233
  files?: undefined;
1223
- } | {
1224
- files: string[];
1225
- plugins: {
1226
- '@stylistic/ts': {
1227
- rules: import("@stylistic/eslint-plugin-ts").Rules;
1228
- configs: {
1229
- "disable-legacy": import("eslint").Linter.Config;
1230
- "all": import("eslint").Linter.Config;
1231
- "all-flat": import("eslint").Linter.Config;
1232
- };
1233
- };
1234
- '@stylistic/js'?: undefined;
1235
- };
1236
- rules: {
1237
- '@stylistic/js/comma-dangle': string;
1238
- '@stylistic/js/comma-spacing': string;
1239
- '@stylistic/js/indent': string;
1240
- '@stylistic/js/key-spacing': string;
1241
- '@stylistic/js/keyword-spacing': string;
1242
- '@stylistic/js/object-curly-spacing': string;
1243
- '@stylistic/js/quote-props': string;
1244
- '@stylistic/js/quotes': string;
1245
- '@stylistic/js/semi': string;
1246
- '@stylistic/js/space-before-blocks': string;
1247
- '@stylistic/js/space-before-function-paren': string;
1248
- '@stylistic/js/space-infix-ops': string;
1249
- '@stylistic/ts/comma-dangle': string[];
1250
- '@stylistic/ts/comma-spacing': string;
1251
- '@stylistic/ts/indent': (string | number | {
1252
- SwitchCase: number;
1253
- })[];
1254
- '@stylistic/ts/key-spacing': string;
1255
- '@stylistic/ts/keyword-spacing': string;
1256
- '@stylistic/ts/object-curly-spacing': string[];
1257
- '@stylistic/ts/quote-props': string[];
1258
- '@stylistic/ts/quotes': string[];
1259
- '@stylistic/ts/semi': string[];
1260
- '@stylistic/ts/space-before-blocks': string[];
1261
- '@stylistic/ts/space-before-function-paren': string[];
1262
- '@stylistic/ts/space-infix-ops': string;
1263
- 'arrow-body-style'?: undefined;
1264
- eqeqeq?: undefined;
1265
- 'no-console'?: undefined;
1266
- 'no-nested-ternary'?: undefined;
1267
- 'no-unused-vars'?: undefined;
1268
- 'prefer-const'?: undefined;
1269
- 'prefer-template'?: undefined;
1270
- '@stylistic/js/array-bracket-spacing'?: undefined;
1271
- '@stylistic/js/arrow-parens'?: undefined;
1272
- '@stylistic/js/eol-last'?: undefined;
1273
- '@stylistic/js/multiline-ternary'?: undefined;
1274
- '@stylistic/js/no-multi-spaces'?: undefined;
1275
- '@stylistic/js/no-multiple-empty-lines'?: undefined;
1276
- '@stylistic/js/no-trailing-spaces'?: undefined;
1277
- '@stylistic/js/semi-spacing'?: undefined;
1278
- '@stylistic/js/space-in-parens'?: undefined;
1279
- '@stylistic/js/spaced-comment'?: undefined;
1280
- '@stylistic/js/template-curly-spacing'?: undefined;
1281
- '@typescript-eslint/no-unused-expressions'?: undefined;
1282
- '@typescript-eslint/no-unused-vars'?: undefined;
1283
- 'sort-keys'?: undefined;
1284
- };
1285
- languageOptions?: undefined;
1286
1234
  } | {
1287
1235
  files: string[];
1288
1236
  rules: {
@@ -1297,43 +1245,31 @@ declare const _default: ({
1297
1245
  'no-unused-vars'?: undefined;
1298
1246
  'prefer-const'?: undefined;
1299
1247
  'prefer-template'?: undefined;
1300
- '@stylistic/js/array-bracket-spacing'?: undefined;
1301
- '@stylistic/js/arrow-parens'?: undefined;
1302
- '@stylistic/js/comma-dangle'?: undefined;
1303
- '@stylistic/js/comma-spacing'?: undefined;
1304
- '@stylistic/js/eol-last'?: undefined;
1305
- '@stylistic/js/indent'?: undefined;
1306
- '@stylistic/js/key-spacing'?: undefined;
1307
- '@stylistic/js/keyword-spacing'?: undefined;
1308
- '@stylistic/js/multiline-ternary'?: undefined;
1309
- '@stylistic/js/no-multi-spaces'?: undefined;
1310
- '@stylistic/js/no-multiple-empty-lines'?: undefined;
1311
- '@stylistic/js/no-trailing-spaces'?: undefined;
1312
- '@stylistic/js/object-curly-spacing'?: undefined;
1313
- '@stylistic/js/quote-props'?: undefined;
1314
- '@stylistic/js/quotes'?: undefined;
1315
- '@stylistic/js/semi'?: undefined;
1316
- '@stylistic/js/semi-spacing'?: undefined;
1317
- '@stylistic/js/space-before-blocks'?: undefined;
1318
- '@stylistic/js/space-before-function-paren'?: undefined;
1319
- '@stylistic/js/space-in-parens'?: undefined;
1320
- '@stylistic/js/space-infix-ops'?: undefined;
1321
- '@stylistic/js/spaced-comment'?: undefined;
1322
- '@stylistic/js/template-curly-spacing'?: undefined;
1248
+ '@stylistic/array-bracket-spacing'?: undefined;
1249
+ '@stylistic/arrow-parens'?: undefined;
1250
+ '@stylistic/comma-dangle'?: undefined;
1251
+ '@stylistic/comma-spacing'?: undefined;
1252
+ '@stylistic/eol-last'?: undefined;
1253
+ '@stylistic/indent'?: undefined;
1254
+ '@stylistic/key-spacing'?: undefined;
1255
+ '@stylistic/keyword-spacing'?: undefined;
1256
+ '@stylistic/multiline-ternary'?: undefined;
1257
+ '@stylistic/no-multi-spaces'?: undefined;
1258
+ '@stylistic/no-multiple-empty-lines'?: undefined;
1259
+ '@stylistic/no-trailing-spaces'?: undefined;
1260
+ '@stylistic/object-curly-spacing'?: undefined;
1261
+ '@stylistic/quote-props'?: undefined;
1262
+ '@stylistic/quotes'?: undefined;
1263
+ '@stylistic/semi'?: undefined;
1264
+ '@stylistic/semi-spacing'?: undefined;
1265
+ '@stylistic/space-before-blocks'?: undefined;
1266
+ '@stylistic/space-before-function-paren'?: undefined;
1267
+ '@stylistic/space-in-parens'?: undefined;
1268
+ '@stylistic/space-infix-ops'?: undefined;
1269
+ '@stylistic/spaced-comment'?: undefined;
1270
+ '@stylistic/template-curly-spacing'?: undefined;
1323
1271
  '@typescript-eslint/no-unused-expressions'?: undefined;
1324
1272
  '@typescript-eslint/no-unused-vars'?: undefined;
1325
- '@stylistic/ts/comma-dangle'?: undefined;
1326
- '@stylistic/ts/comma-spacing'?: undefined;
1327
- '@stylistic/ts/indent'?: undefined;
1328
- '@stylistic/ts/key-spacing'?: undefined;
1329
- '@stylistic/ts/keyword-spacing'?: undefined;
1330
- '@stylistic/ts/object-curly-spacing'?: undefined;
1331
- '@stylistic/ts/quote-props'?: undefined;
1332
- '@stylistic/ts/quotes'?: undefined;
1333
- '@stylistic/ts/semi'?: undefined;
1334
- '@stylistic/ts/space-before-blocks'?: undefined;
1335
- '@stylistic/ts/space-before-function-paren'?: undefined;
1336
- '@stylistic/ts/space-infix-ops'?: undefined;
1337
1273
  };
1338
1274
  languageOptions?: undefined;
1339
1275
  plugins?: undefined;
@@ -1345,9 +1281,8 @@ declare const _default: ({
1345
1281
  };
1346
1282
  };
1347
1283
  rules: {
1348
- '@stylistic/js/indent': string;
1349
- '@stylistic/js/object-curly-spacing': string;
1350
- '@stylistic/ts/indent': string;
1284
+ '@stylistic/indent': string;
1285
+ '@stylistic/object-curly-spacing': string;
1351
1286
  'tailwindcss/no-custom-classname': string;
1352
1287
  'vue/attributes-order': (string | {
1353
1288
  alphabetical: boolean;
@@ -14,9 +14,8 @@ export default [
14
14
  }
15
15
  },
16
16
  rules: {
17
- "@stylistic/js/indent": "off",
18
- "@stylistic/js/object-curly-spacing": "off",
19
- "@stylistic/ts/indent": "off",
17
+ "@stylistic/indent": "off",
18
+ "@stylistic/object-curly-spacing": "off",
20
19
  "tailwindcss/no-custom-classname": "error",
21
20
  "vue/attributes-order": ["error", {
22
21
  alphabetical: true
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "configKey": "leexi",
3
3
  "name": "@leexi/shared",
4
- "version": "0.3.6",
4
+ "version": "0.3.8",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.1",
7
7
  "unbuild": "3.5.0"
@@ -1,16 +1,22 @@
1
1
  import type { Ref } from 'vue';
2
2
  /**
3
- * Creates a reactive pointer to a specific localStorage value.
4
- * The value is stored in the localStorage as a JSON stringified data to enable parsing primitives and objects
3
+ * A composable that provides a reactive reference to a value stored in localStorage.
4
+ * It handles JSON parsing/stringifying and migration from kebab-case/snake_case keys to camelCase.
5
5
  *
6
- * @param key - a key pointing to a localStorage value
7
- * @param defaultValue - an optional default value used if the localStorage value is undefined
8
- * @returns a reactive variable pointing to that localStorage value
6
+ * @param key The key to use in localStorage. Throws an error if not camelCase.
7
+ * @param defaultValue An optional default value to use if the key is not found in localStorage.
8
+ * @returns A reactive reference (`Ref`) containing the value from localStorage or the default value.
9
9
  *
10
10
  * @example
11
- * const fooOne = useLocalStorage('foo')
12
- * const fooTwo = useLocalStorage('foo', 'bar')
13
- * fooOne.value // => 'bar'
14
- * localStorage.foo // => '"bar"'
11
+ * const userSetting = useLocalStorage('userSetting', { theme: 'light' });
12
+ * console.log(userSetting.value); // Output: { theme: 'light' }
13
+ * console.log(localStorage.userSetting); // Output: '{"theme":"light"}'
14
+ *
15
+ * const sameUserSetting = useLocalStorage('userSetting');
16
+ * console.log(sameUserSetting.value); // Output: { theme: 'light' }
17
+ *
18
+ * userSetting.value = { theme: 'dark', notifications: true };
19
+ * console.log(sameUserSetting.value); // Output: { theme: 'dark', notifications: true }
20
+ * console.log(localStorage.userSetting); // Output: '{"theme":"dark","notifications":true}'
15
21
  */
16
22
  export declare const useLocalStorage: <T>(key: string, defaultValue?: T) => Ref<undefined | T>;
@@ -1,9 +1,18 @@
1
1
  /**
2
- * Deeply duplicates an object.
2
+ * Creates a deep duplicate of an object, array, or Set.
3
+ * It handles nested objects, arrays, and Sets but does not handle functions, Dates, or circular references.
4
+ *
5
+ * @param object The object, array, or Set to duplicate.
6
+ * @returns A deep copy of the input object.
3
7
  *
4
8
  * @example
5
- * const object = [{ foo: 'bar' }]
6
- * const dup = deepDup(object) // => `[{ foo: 'bar' }]`
7
- * object === dup // => `false`
9
+ * const originalObject = { a: 1, b: { c: 2, d: [3, 4] }, e: new Set([5, 6]) };
10
+ * const duplicatedObject = deepDup(originalObject);
11
+ *
12
+ * console.log(duplicatedObject); // Output: { a: 1, b: { c: 2, d: [3, 4] }, e: Set { 5, 6 } }
13
+ * console.log(originalObject === duplicatedObject); // Output: false
14
+ * console.log(originalObject.b === duplicatedObject.b); // Output: false
15
+ * console.log(originalObject.b.d === duplicatedObject.b.d); // Output: false
16
+ * console.log(originalObject.e === duplicatedObject.e); // Output: false
8
17
  */
9
18
  export declare const deepDup: <T extends object>(object: T) => T;
@@ -1,8 +1,17 @@
1
1
  /**
2
- * Compares whether two objects are identical.
2
+ * Checks if two objects are the same by comparing their JSON stringified representations.
3
+ * Note: This method has limitations and may not accurately compare objects with different key orders, non-primitive values like functions or Dates, or circular references.
4
+ *
5
+ * @param a The first object to compare.
6
+ * @param b The second object to compare.
7
+ * @returns True if the JSON stringified representations of the objects are identical, false otherwise.
3
8
  *
4
9
  * @example
5
- * isSame([{ foo: 'bar' }], [{ foo: 'bar' }]) // => `true`
6
- * isSame([{ foo: 'bar' }], [{ bar: 'foo' }]) // => `false`
10
+ * const obj1 = { a: 1, b: 2 };
11
+ * const obj2 = { a: 1, b: 2 };
12
+ * const obj3 = { b: 2, a: 1 };
13
+ *
14
+ * console.log(isSame(obj1, obj2)); // Output: true
15
+ * console.log(isSame(obj1, obj3)); // Output: false (due to key order difference in JSON stringification)
7
16
  */
8
17
  export declare const isSame: (a: object, b: object) => boolean;