@timus-networks/theme 2.4.56 → 2.4.57
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/module.json +1 -1
- package/dist/module.mjs +1 -1
- package/dist/runtime/components/development/example.alert.vue +1 -0
- package/dist/runtime/components/development/example.avatar.vue +2 -0
- package/dist/runtime/components/development/example.badge.vue +1 -0
- package/dist/runtime/components/development/example.breadcrumb.vue +1 -0
- package/dist/runtime/components/development/example.button.vue +3 -0
- package/dist/runtime/components/development/example.datepicker.vue +3 -0
- package/dist/runtime/components/development/example.description.vue +1 -0
- package/dist/runtime/components/development/example.dialog.vue +2 -0
- package/dist/runtime/components/development/example.dropdown.vue +2 -0
- package/dist/runtime/components/development/example.form.vue +9 -0
- package/dist/runtime/components/development/example.input.vue +2 -0
- package/dist/runtime/components/development/example.link.vue +1 -0
- package/dist/runtime/components/development/example.message.vue +4 -0
- package/dist/runtime/components/development/example.notification.vue +2 -0
- package/dist/runtime/components/development/example.number.vue +2 -0
- package/dist/runtime/components/development/example.pagination.vue +2 -0
- package/dist/runtime/components/development/example.popover.vue +3 -0
- package/dist/runtime/components/development/example.sidebar.vue +4 -0
- package/dist/runtime/components/development/example.switch.vue +1 -0
- package/dist/runtime/components/development/example.table.vue +2 -0
- package/dist/runtime/components/development/example.tag.vue +13 -0
- package/dist/runtime/components/development/example.timepicker.vue +6 -0
- package/dist/runtime/components/development/example.upload.vue +5 -0
- package/dist/runtime/components/production/html-encode.vue +3 -0
- package/dist/runtime/pages/theme.vue +1 -0
- package/dist/runtime/public/scss/element-plus/index.css +0 -1
- package/dist/runtime/public/scss/element-plus/overlay.css +0 -1
- package/dist/runtime/public/scss/element-plus/overlay.scss +1 -1
- package/package.json +1 -1
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -11,7 +11,7 @@ const __filename = __cjs_url__.fileURLToPath(import.meta.url);
|
|
|
11
11
|
const __dirname = __cjs_path__.dirname(__filename);
|
|
12
12
|
const require = __cjs_mod__.createRequire(import.meta.url);
|
|
13
13
|
const name = "@timus-networks/theme";
|
|
14
|
-
const version = "2.4.
|
|
14
|
+
const version = "2.4.57";
|
|
15
15
|
const description = "A comprehensive Nuxt.js module providing a tailored theme experience with integrated TailwindCSS support for applications.";
|
|
16
16
|
const type = "module";
|
|
17
17
|
const exports = {
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
import { ref } from 'vue';
|
|
26
26
|
|
|
27
27
|
const colors = ref(['success', 'warning', 'info', 'error', 'danger']);
|
|
28
|
+
|
|
28
29
|
const snippets = ref({
|
|
29
30
|
basic: `<el-alert title="Title Text Goes Here" type="danger" description="This is a description." show-icon :closable="false" />`,
|
|
30
31
|
});
|
|
@@ -76,7 +76,9 @@
|
|
|
76
76
|
sizes: [50, 'default', 'large', 'medium', 'small', 'mini'] as const,
|
|
77
77
|
infos: [50, '32', '56', '44', '32', '16'] as const,
|
|
78
78
|
});
|
|
79
|
+
|
|
79
80
|
const { sizes, infos } = toRefs(state);
|
|
81
|
+
|
|
80
82
|
const snippets = ref({
|
|
81
83
|
isax: `<el-avatar class="isax-notification" />`,
|
|
82
84
|
icon: `<el-avatar :icon="ElIconEdit" />`,
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
{ regex: /^\/about$/, label: 'header.about-label.text' },
|
|
35
35
|
{ regex: /^\/theme\/([A-Za-z0-9\-_]+)$/, label: 'header.number.text' },
|
|
36
36
|
]);
|
|
37
|
+
|
|
37
38
|
const snippets = ref({
|
|
38
39
|
basic: `<timus-breadcrumb :paths="[ { regex: /^\/about$/, label: 'header.about.text' } ]" />`,
|
|
39
40
|
composable: `
|
|
@@ -219,6 +219,7 @@
|
|
|
219
219
|
|
|
220
220
|
const sizes = ['default', 'large', 'medium', 'small', 'mini'];
|
|
221
221
|
const colors = ['default', 'primary', 'secondary', 'neutral', 'success', 'warning', 'info', 'danger'];
|
|
222
|
+
|
|
222
223
|
const snippets = {
|
|
223
224
|
group: `
|
|
224
225
|
<el-button-group>
|
|
@@ -228,7 +229,9 @@
|
|
|
228
229
|
</el-button>
|
|
229
230
|
</el-button-group>`,
|
|
230
231
|
};
|
|
232
|
+
|
|
231
233
|
const active_color = ref('default');
|
|
234
|
+
|
|
232
235
|
const capitalize = (value: string): string => {
|
|
233
236
|
const text = String(value);
|
|
234
237
|
|
|
@@ -157,6 +157,7 @@
|
|
|
157
157
|
const range_value = ref([]);
|
|
158
158
|
const value = ref('');
|
|
159
159
|
const sizes = ref<Array<'default' | 'large' | 'medium' | 'small' | 'mini'>>(['default', 'large', 'medium', 'small', 'mini']);
|
|
160
|
+
|
|
160
161
|
const shortcuts = [
|
|
161
162
|
{
|
|
162
163
|
text: 'Today',
|
|
@@ -183,7 +184,9 @@
|
|
|
183
184
|
},
|
|
184
185
|
},
|
|
185
186
|
];
|
|
187
|
+
|
|
186
188
|
const disabledDate = (time: Date) => time.getTime() > Date.now();
|
|
189
|
+
|
|
187
190
|
const snippets = ref({
|
|
188
191
|
basic: `<el-date-picker v-model="value" type="date" placeholder="Pick a day" size="large" />`,
|
|
189
192
|
types: `<el-date-picker v-model="value" type="month" placeholder="Pick a month" />`,
|
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
// useZIndex(c);
|
|
40
40
|
|
|
41
41
|
const dialogVisible = ref(false);
|
|
42
|
+
|
|
42
43
|
const handleClose = (done: () => void) => {
|
|
43
44
|
ElMessageBox.confirm('Are you sure to close this dialog?')
|
|
44
45
|
.then(() => {
|
|
@@ -48,6 +49,7 @@
|
|
|
48
49
|
// catch error
|
|
49
50
|
});
|
|
50
51
|
};
|
|
52
|
+
|
|
51
53
|
const snippets = ref({
|
|
52
54
|
basic: `
|
|
53
55
|
<el-button plain @click="dialogVisible = true"> Click to open the Dialog </el-button>
|
|
@@ -167,6 +167,7 @@
|
|
|
167
167
|
const trigger_selected = ref('click');
|
|
168
168
|
const size_list = ref(['default', 'large', 'medium', 'small', 'mini']);
|
|
169
169
|
const size_selected = ref('default');
|
|
170
|
+
|
|
170
171
|
const snippets = ref({
|
|
171
172
|
basic: `
|
|
172
173
|
<el-dropdown>
|
|
@@ -186,6 +187,7 @@
|
|
|
186
187
|
underline: `<el-link :underline="false">Without Underline</el-link>`,
|
|
187
188
|
icon: `<el-link class="isax-add icon-right">Check</el-link>`,
|
|
188
189
|
});
|
|
190
|
+
|
|
189
191
|
const handleClick = () => {
|
|
190
192
|
alert('button click');
|
|
191
193
|
};
|
|
@@ -321,10 +321,13 @@
|
|
|
321
321
|
resource: '',
|
|
322
322
|
desc: '',
|
|
323
323
|
});
|
|
324
|
+
|
|
324
325
|
const onSubmit = () => {
|
|
325
326
|
console.log('submit!');
|
|
326
327
|
};
|
|
328
|
+
|
|
327
329
|
const labelPosition = ref<FormProps['labelPosition']>('top');
|
|
330
|
+
|
|
328
331
|
const snippets = ref({
|
|
329
332
|
basic: `
|
|
330
333
|
<el-form :model="form" label-width="auto" :label-position="top" require-asterisk-position="right">
|
|
@@ -399,6 +402,7 @@
|
|
|
399
402
|
|
|
400
403
|
const formSize = ref<ComponentSize>('default');
|
|
401
404
|
const ruleFormRef = ref<FormInstance>();
|
|
405
|
+
|
|
402
406
|
const ruleForm = reactive<RuleForm>({
|
|
403
407
|
name: 'Hello',
|
|
404
408
|
region: '',
|
|
@@ -411,7 +415,9 @@
|
|
|
411
415
|
resource: '',
|
|
412
416
|
desc: '',
|
|
413
417
|
});
|
|
418
|
+
|
|
414
419
|
const locationOptions = ['Home', 'Company', 'School'];
|
|
420
|
+
|
|
415
421
|
const rules = reactive<FormRules<RuleForm>>({
|
|
416
422
|
name: [
|
|
417
423
|
{ required: true, message: 'Please input Activity name', trigger: 'blur' },
|
|
@@ -471,6 +477,7 @@
|
|
|
471
477
|
],
|
|
472
478
|
desc: [{ required: true, message: 'Please input activity form', trigger: 'blur' }],
|
|
473
479
|
});
|
|
480
|
+
|
|
474
481
|
const submitForm = async (formEl: FormInstance | undefined) => {
|
|
475
482
|
if (!formEl) return;
|
|
476
483
|
await formEl.validate((valid: boolean, fields) => {
|
|
@@ -481,10 +488,12 @@
|
|
|
481
488
|
}
|
|
482
489
|
});
|
|
483
490
|
};
|
|
491
|
+
|
|
484
492
|
const resetForm = (formEl: FormInstance | undefined) => {
|
|
485
493
|
if (!formEl) return;
|
|
486
494
|
formEl.resetFields();
|
|
487
495
|
};
|
|
496
|
+
|
|
488
497
|
const options = Array.from({ length: 10000 }).map((_, idx) => ({
|
|
489
498
|
value: `${idx + 1}`,
|
|
490
499
|
label: `${idx + 1}`,
|
|
@@ -224,6 +224,7 @@
|
|
|
224
224
|
const input = ref('');
|
|
225
225
|
const textarea = ref('');
|
|
226
226
|
const select = ref('1');
|
|
227
|
+
|
|
227
228
|
const snippets = {
|
|
228
229
|
formatter: `<el-input
|
|
229
230
|
v-model="input"
|
|
@@ -253,6 +254,7 @@
|
|
|
253
254
|
</el-input>
|
|
254
255
|
`,
|
|
255
256
|
};
|
|
257
|
+
|
|
256
258
|
const capitalize = (value: string): string => {
|
|
257
259
|
const text = String(value);
|
|
258
260
|
|
|
@@ -62,6 +62,7 @@
|
|
|
62
62
|
import { ref } from 'vue';
|
|
63
63
|
|
|
64
64
|
const colors = ref<string[]>(['default', 'primary', 'secondary', 'neutral', 'success', 'warning', 'info', 'danger']);
|
|
65
|
+
|
|
65
66
|
const snippets = ref({
|
|
66
67
|
basic: `<el-link href="https://element-plus.org" target="_blank" type="secondary">default</el-link>`,
|
|
67
68
|
disabled: `<el-link type="secondary" disabled>default</el-link>`,
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
import { ref } from 'vue';
|
|
33
33
|
|
|
34
34
|
const colors = ref(['success', 'warning', 'info', 'error' /* , 'danger' */]);
|
|
35
|
+
|
|
35
36
|
const snippets = ref({
|
|
36
37
|
basic: `
|
|
37
38
|
import { ElMessage, type MessageOptions } from 'element-plus';
|
|
@@ -46,10 +47,13 @@
|
|
|
46
47
|
} as MessageOptions)
|
|
47
48
|
`,
|
|
48
49
|
});
|
|
50
|
+
|
|
49
51
|
const basicOpener = () => {
|
|
50
52
|
ElMessage({ message: 'This is a message.', showClose: true, duration: 0 });
|
|
51
53
|
};
|
|
54
|
+
|
|
52
55
|
const isPlain = ref(false);
|
|
56
|
+
|
|
53
57
|
const open = function (type: string, plain: boolean = true) {
|
|
54
58
|
ElMessage({
|
|
55
59
|
showClose: true,
|
|
@@ -58,9 +58,11 @@
|
|
|
58
58
|
|
|
59
59
|
const sizes = ref(['default', 'large', 'medium', 'small', 'mini']);
|
|
60
60
|
const num = ref(1);
|
|
61
|
+
|
|
61
62
|
const handleChange = (value: number) => {
|
|
62
63
|
console.log(value);
|
|
63
64
|
};
|
|
65
|
+
|
|
64
66
|
const snippets = ref({
|
|
65
67
|
basic: `
|
|
66
68
|
<el-input-number v-model="num" :min="1" :max="10" @change="handleChange" />
|
|
@@ -101,11 +101,14 @@
|
|
|
101
101
|
const buttonRef = ref();
|
|
102
102
|
const popoverRef = ref();
|
|
103
103
|
const visible = ref(false);
|
|
104
|
+
|
|
104
105
|
const onClickOutside = () => {
|
|
105
106
|
unref(popoverRef).popperRef?.delayHide?.();
|
|
106
107
|
};
|
|
108
|
+
|
|
107
109
|
const sizes = ['default', 'large', 'medium', 'small', 'mini'];
|
|
108
110
|
const model = ref('');
|
|
111
|
+
|
|
109
112
|
const snippets = {
|
|
110
113
|
basic: `
|
|
111
114
|
<el-popover placement="top-start" title="Title" :width="200" trigger="hover" content="this is content, this is content, this is content">
|
|
@@ -70,6 +70,7 @@
|
|
|
70
70
|
import { ref } from 'vue';
|
|
71
71
|
|
|
72
72
|
const route = useRoute();
|
|
73
|
+
|
|
73
74
|
const currentRoute = computed(() => ({
|
|
74
75
|
path: route.path,
|
|
75
76
|
fullPath: route.fullPath,
|
|
@@ -77,12 +78,15 @@
|
|
|
77
78
|
params: route.params,
|
|
78
79
|
query: route.query,
|
|
79
80
|
}));
|
|
81
|
+
|
|
80
82
|
const handleOpen = (key: string, keyPath: string[]) => {
|
|
81
83
|
console.log(key, keyPath);
|
|
82
84
|
};
|
|
85
|
+
|
|
83
86
|
const handleClose = (key: string, keyPath: string[]) => {
|
|
84
87
|
console.log(key, keyPath);
|
|
85
88
|
};
|
|
89
|
+
|
|
86
90
|
const snippets = ref({
|
|
87
91
|
sizes: `
|
|
88
92
|
<el-menu :default-active="currentRoute.path" class="w-[270px]" :router="true" @open="handleOpen" @close="handleClose">
|
|
@@ -83,6 +83,7 @@
|
|
|
83
83
|
const value = ref(true);
|
|
84
84
|
const custom = ref(100);
|
|
85
85
|
const sizes = ref(['default', 'large', 'medium', 'small', 'mini']);
|
|
86
|
+
|
|
86
87
|
const snippets = ref({
|
|
87
88
|
basic: `<el-switch v-model="value2" class="ml-2" style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949" />`,
|
|
88
89
|
sizes: `<el-switch v-model="value" size="large" />`,
|
|
@@ -90,6 +90,7 @@
|
|
|
90
90
|
zip: string;
|
|
91
91
|
address: string;
|
|
92
92
|
}
|
|
93
|
+
|
|
93
94
|
const tableData: User[] = [
|
|
94
95
|
{
|
|
95
96
|
date: '2016-05-03',
|
|
@@ -148,6 +149,7 @@
|
|
|
148
149
|
zip: 'CA 90036',
|
|
149
150
|
},
|
|
150
151
|
];
|
|
152
|
+
|
|
151
153
|
const snippets = ref({
|
|
152
154
|
basic: `
|
|
153
155
|
<el-table :data="tableData" style="width: 100%">
|
|
@@ -161,24 +161,31 @@
|
|
|
161
161
|
const checked3 = ref(true);
|
|
162
162
|
const checked4 = ref(true);
|
|
163
163
|
const checked5 = ref(true);
|
|
164
|
+
|
|
164
165
|
const onChange = (status: boolean) => {
|
|
165
166
|
checked.value = status;
|
|
166
167
|
};
|
|
168
|
+
|
|
167
169
|
const onChange1 = (status: boolean) => {
|
|
168
170
|
checked1.value = status;
|
|
169
171
|
};
|
|
172
|
+
|
|
170
173
|
const onChange2 = (status: boolean) => {
|
|
171
174
|
checked2.value = status;
|
|
172
175
|
};
|
|
176
|
+
|
|
173
177
|
const onChange3 = (status: boolean) => {
|
|
174
178
|
checked3.value = status;
|
|
175
179
|
};
|
|
180
|
+
|
|
176
181
|
const onChange4 = (status: boolean) => {
|
|
177
182
|
checked4.value = status;
|
|
178
183
|
};
|
|
184
|
+
|
|
179
185
|
const onChange5 = (status: boolean) => {
|
|
180
186
|
checked5.value = status;
|
|
181
187
|
};
|
|
188
|
+
|
|
182
189
|
const items = ref<Array<Item>>([
|
|
183
190
|
{ type: 'primary', label: 'Tag 1' },
|
|
184
191
|
{ type: 'secondary', label: 'Tag 2' },
|
|
@@ -188,6 +195,7 @@
|
|
|
188
195
|
{ type: 'warning', label: 'Tag 4' },
|
|
189
196
|
{ type: 'danger', label: 'Tag 5' },
|
|
190
197
|
]);
|
|
198
|
+
|
|
191
199
|
const tags = ref<TagsItem[]>([
|
|
192
200
|
{ name: 'Tag 1', type: 'primary' },
|
|
193
201
|
{ name: 'Tag 1', type: 'secondary' },
|
|
@@ -197,23 +205,28 @@
|
|
|
197
205
|
{ name: 'Tag 4', type: 'warning' },
|
|
198
206
|
{ name: 'Tag 5', type: 'danger' },
|
|
199
207
|
]);
|
|
208
|
+
|
|
200
209
|
const inputValue = ref('');
|
|
201
210
|
const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']);
|
|
202
211
|
const inputVisible = ref(false);
|
|
203
212
|
const InputRef = ref<InputInstance>();
|
|
213
|
+
|
|
204
214
|
const handleClose = (tag: string) => {
|
|
205
215
|
dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
|
|
206
216
|
};
|
|
217
|
+
|
|
207
218
|
const showInput = () => {
|
|
208
219
|
inputVisible.value = true;
|
|
209
220
|
nextTick(() => {
|
|
210
221
|
InputRef.value!.input!.focus();
|
|
211
222
|
});
|
|
212
223
|
};
|
|
224
|
+
|
|
213
225
|
const handleInputConfirm = () => {
|
|
214
226
|
if (inputValue.value) {
|
|
215
227
|
dynamicTags.value.push(inputValue.value);
|
|
216
228
|
}
|
|
229
|
+
|
|
217
230
|
inputVisible.value = false;
|
|
218
231
|
inputValue.value = '';
|
|
219
232
|
};
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
const value = ref('');
|
|
57
57
|
const range = ref<[Date, Date]>([new Date(2016, 9, 10, 8, 40), new Date(2016, 9, 10, 9, 40)]);
|
|
58
58
|
const limited = ref(new Date(2016, 9, 10, 18, 30));
|
|
59
|
+
|
|
59
60
|
const makeRange = (start: number, end: number) => {
|
|
60
61
|
const result: number[] = [];
|
|
61
62
|
|
|
@@ -65,22 +66,27 @@
|
|
|
65
66
|
|
|
66
67
|
return result;
|
|
67
68
|
};
|
|
69
|
+
|
|
68
70
|
const disabledHours = () => makeRange(0, 16).concat(makeRange(19, 23));
|
|
71
|
+
|
|
69
72
|
const disabledMinutes: GetDisabledMinutes = (hour: number) => {
|
|
70
73
|
if (hour === 17) {
|
|
71
74
|
return makeRange(0, 29) as number[];
|
|
72
75
|
}
|
|
76
|
+
|
|
73
77
|
if (hour === 18) {
|
|
74
78
|
return makeRange(31, 59) as number[];
|
|
75
79
|
}
|
|
76
80
|
|
|
77
81
|
return [];
|
|
78
82
|
};
|
|
83
|
+
|
|
79
84
|
const disabledSeconds = (hour: number, minute: number) => {
|
|
80
85
|
if (hour === 18 && minute === 30) {
|
|
81
86
|
return makeRange(1, 59);
|
|
82
87
|
}
|
|
83
88
|
};
|
|
89
|
+
|
|
84
90
|
const snippets = ref({
|
|
85
91
|
basic: `<el-time-picker v-model="value" arrow-control placeholder="Arbitrary time" />`,
|
|
86
92
|
limit: `<el-time-picker v-model="limited" :disabled-hours="disabledHours" :disabled-minutes="disabledMinutes" :disabled-seconds="disabledSeconds" placeholder="Arbitrary time" />`,
|
|
@@ -49,20 +49,25 @@
|
|
|
49
49
|
url: 'https://element-plus.org/images/element-plus-logo.svg',
|
|
50
50
|
},
|
|
51
51
|
]);
|
|
52
|
+
|
|
52
53
|
const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
|
|
53
54
|
console.log(file, uploadFiles);
|
|
54
55
|
};
|
|
56
|
+
|
|
55
57
|
const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
|
|
56
58
|
console.log(uploadFile);
|
|
57
59
|
};
|
|
60
|
+
|
|
58
61
|
const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
|
|
59
62
|
ElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);
|
|
60
63
|
};
|
|
64
|
+
|
|
61
65
|
const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) =>
|
|
62
66
|
ElMessageBox.confirm(`Cancel the transfer of ${uploadFile.name} ?`).then(
|
|
63
67
|
() => true,
|
|
64
68
|
() => false,
|
|
65
69
|
);
|
|
70
|
+
|
|
66
71
|
const snippets = ref({
|
|
67
72
|
basic: `<el-upload
|
|
68
73
|
v-model:file-list="fileList"
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import { computed } from 'vue';
|
|
16
16
|
|
|
17
17
|
const props = defineProps<{ tag: string }>();
|
|
18
|
+
|
|
18
19
|
const htmlEncode = (str: string): string => {
|
|
19
20
|
const entityMap: { [key: string]: string } = {
|
|
20
21
|
'&': '&',
|
|
@@ -26,8 +27,10 @@
|
|
|
26
27
|
|
|
27
28
|
return str.replace(/[&<>"']/g, (m: string) => entityMap[m]);
|
|
28
29
|
};
|
|
30
|
+
|
|
29
31
|
const formattedLines = computed(() => {
|
|
30
32
|
const lines = props.tag.split('\n');
|
|
33
|
+
|
|
31
34
|
const baseIndent = lines.reduce((min, line) => {
|
|
32
35
|
const match = line.match(/^\s*/);
|
|
33
36
|
const indent = match ? match[0].length : 0;
|
|
@@ -10922,7 +10922,6 @@ heights > $common-component-size
|
|
|
10922
10922
|
right: 0;
|
|
10923
10923
|
bottom: 0;
|
|
10924
10924
|
left: 0;
|
|
10925
|
-
z-index: 2000 !important;
|
|
10926
10925
|
height: 100%;
|
|
10927
10926
|
background-color: #343337cc;
|
|
10928
10927
|
overflow: auto;
|
package/package.json
CHANGED