@abtnode/ux 1.16.26-beta-bdd2d7c0 → 1.16.26-beta-4831bf3f

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.
@@ -12,6 +12,7 @@ import Breadcrumbs from '@mui/material/Breadcrumbs';
12
12
  import Box from '@mui/material/Box';
13
13
  import IconButton from '@mui/material/IconButton';
14
14
  import DeleteOutlineIcon from '@mui/icons-material/DeleteOutline';
15
+ import CloudUploadRoundedIcon from '@mui/icons-material/CloudUploadRounded';
15
16
  import InputAdornment from '@mui/material/InputAdornment';
16
17
  import Spinner from '@mui/material/CircularProgress';
17
18
  import MaterialDialog from '@mui/material/Dialog';
@@ -502,7 +503,7 @@ export default function CreateRelease({
502
503
  "aria-label": "breadcrumb",
503
504
  children: [/*#__PURE__*/_jsx(Link, {
504
505
  to: "../",
505
- children: t('common.publish')
506
+ children: t('common.blockletStudio')
506
507
  }), /*#__PURE__*/_jsx(Link, {
507
508
  to: `../${projectId}`,
508
509
  children: params?.blockletTitle || 'Blocklet'
@@ -551,10 +552,15 @@ export default function CreateRelease({
551
552
  href: joinUrl(`${WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${blocklet.meta.did}/${projectId}/${releaseId}/download/${(release.files || [])[0]}`),
552
553
  children: t('common.download')
553
554
  })
554
- }), /*#__PURE__*/_jsx(Button, {
555
+ }), /*#__PURE__*/_jsxs(Button, {
555
556
  variant: "contained",
556
557
  onClick: () => setShowStoreDialog(true),
557
- children: t('common.uploadToStore')
558
+ children: [/*#__PURE__*/_jsx(CloudUploadRoundedIcon, {
559
+ style: {
560
+ fontSize: '1.3em',
561
+ marginRight: 4
562
+ }
563
+ }), t('common.uploadToStore')]
558
564
  })]
559
565
  })]
560
566
  })]
@@ -2,16 +2,15 @@
2
2
  import React, { useState, useEffect } from 'react';
3
3
  import { Link, useNavigate, useParams } from 'react-router-dom';
4
4
  import styled from '@emotion/styled';
5
- import joinUrl from 'url-join';
6
5
  import { useLocaleContext } from '@arcblock/ux/lib/Locale/context';
7
6
  import Box from '@mui/material/Box';
8
7
  import AddIcon from '@mui/icons-material/Add';
9
8
  import IconButton from '@mui/material/IconButton';
10
- import LibraryAddIcon from '@mui/icons-material/LibraryAdd';
11
9
  import DeleteIcon from '@mui/icons-material/Delete';
12
- import InstallDesktopIcon from '@mui/icons-material/InstallDesktop';
13
- import DownloadIcon from '@mui/icons-material/Download';
14
- import { WELLKNOWN_SERVICE_PATH_PREFIX, UNOWNED_DID } from '@abtnode/constant';
10
+ import VisibilityIcon from '@mui/icons-material/FileOpen';
11
+ import NewFileIcon from '@mui/icons-material/AddBox';
12
+ import HelpOutlineOutlinedIcon from '@mui/icons-material/HelpOutlineOutlined';
13
+ import { UNOWNED_DID } from '@abtnode/constant';
15
14
  import Datatable from '@arcblock/ux/lib/Datatable';
16
15
  import Button from '@arcblock/ux/lib/Button';
17
16
  import Toast from '@arcblock/ux/lib/Toast';
@@ -25,7 +24,6 @@ import DidAddress from '../../did-address';
25
24
  import Confirm from '../../confirm';
26
25
  import BlockletBundleAvatar from '../bundle-avatar';
27
26
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
28
- const serverEndpoint = window.env?.serverEndpoint;
29
27
  export default function ProjectList() {
30
28
  const navigate = useNavigate();
31
29
  const {
@@ -211,16 +209,6 @@ export default function ProjectList() {
211
209
  options: {
212
210
  customBodyRenderLite: rawIndex => {
213
211
  const project = projects[rawIndex];
214
- let installUrl = '';
215
- let downloadUrl = '';
216
- if (project.lastReleaseId) {
217
- const blockletMetaUrl = joinUrl(serverEndpoint, `/api/project/${blocklet.meta.did}/${project.id}/${project.lastReleaseId}/release/blocklet.json`);
218
- const url = new URL(serverEndpoint);
219
- url.pathname = joinUrl(url.pathname, '/launch-blocklet/agreement');
220
- url.searchParams.set('blocklet_meta_url', blockletMetaUrl);
221
- installUrl = url.href;
222
- downloadUrl = joinUrl(`${WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${blocklet.meta.did}/${project.id}/${project.lastReleaseId}/download/${(project.lastReleaseFiles || [])[0]}`);
223
- }
224
212
  return /*#__PURE__*/_jsxs(Box, {
225
213
  display: "flex",
226
214
  children: [/*#__PURE__*/_jsx(Link, {
@@ -231,49 +219,27 @@ export default function ProjectList() {
231
219
  children: /*#__PURE__*/_jsx(IconButton, {
232
220
  color: "primary",
233
221
  "aria-label": "create",
234
- children: /*#__PURE__*/_jsx(LibraryAddIcon, {
235
- sx: {
236
- fontSize: 18
237
- }
238
- })
239
- })
240
- })
241
- }), !!project.lastReleaseId && project.type === 'pack' && /*#__PURE__*/_jsx(Tooltip, {
242
- title: t('blocklet.publish.install', {
243
- name: project.blockletTitle
244
- }),
245
- placement: "top",
246
- children: /*#__PURE__*/_jsx(IconButton, {
247
- color: "secondary",
248
- "aria-label": "create",
249
- children: /*#__PURE__*/_jsx("a", {
250
- style: {
251
- display: 'flex'
252
- },
253
- href: installUrl,
254
- target: "_blank",
255
- rel: "noreferrer",
256
- children: /*#__PURE__*/_jsx(InstallDesktopIcon, {
257
- sx: {
222
+ children: /*#__PURE__*/_jsx(NewFileIcon, {
223
+ style: {
258
224
  fontSize: 18
259
225
  }
260
226
  })
261
227
  })
262
228
  })
263
229
  }), !!project.lastReleaseId && /*#__PURE__*/_jsx(Tooltip, {
264
- title: t('blocklet.publish.download', {
230
+ title: t('blocklet.publish.viewLastRelease', {
265
231
  name: project.blockletTitle
266
232
  }),
267
233
  placement: "top",
268
234
  children: /*#__PURE__*/_jsx(IconButton, {
269
- color: "primary",
235
+ color: "secondary",
270
236
  "aria-label": "create",
271
- children: /*#__PURE__*/_jsx("a", {
237
+ children: /*#__PURE__*/_jsx(Link, {
272
238
  style: {
273
239
  display: 'flex'
274
240
  },
275
- href: downloadUrl,
276
- children: /*#__PURE__*/_jsx(DownloadIcon, {
241
+ to: `${project.id}/${project.lastReleaseId}`,
242
+ children: /*#__PURE__*/_jsx(VisibilityIcon, {
277
243
  sx: {
278
244
  fontSize: 18
279
245
  }
@@ -305,12 +271,28 @@ export default function ProjectList() {
305
271
  display: "flex",
306
272
  justifyContent: "space-between",
307
273
  alignItems: "center",
308
- children: [/*#__PURE__*/_jsx(Box, {
309
- sx: {
310
- fontSize: '1.2rem',
311
- fontWeight: 'bold'
312
- },
313
- children: t('blocklet.publish.productListTitle')
274
+ children: [/*#__PURE__*/_jsxs(Box, {
275
+ display: "flex",
276
+ flexDirection: "row",
277
+ alignItems: "center",
278
+ children: [/*#__PURE__*/_jsx(Box, {
279
+ sx: {
280
+ fontSize: '1.2rem',
281
+ fontWeight: 'bold'
282
+ },
283
+ children: t('blocklet.publish.productListTitle')
284
+ }), /*#__PURE__*/_jsx(Tooltip, {
285
+ title: t('blocklet.publish.createBlockletTip'),
286
+ arrow: true,
287
+ placement: "right",
288
+ children: /*#__PURE__*/_jsx(HelpOutlineOutlinedIcon, {
289
+ sx: {
290
+ opacity: 0.6,
291
+ fontSize: '1.1em',
292
+ ml: 1
293
+ }
294
+ })
295
+ })]
314
296
  }), /*#__PURE__*/_jsxs(Button, {
315
297
  onClick: handleNewBlocklet,
316
298
  variant: "contained",
@@ -8,6 +8,7 @@ import { useLocaleContext } from '@arcblock/ux/lib/Locale/context';
8
8
  import Box from '@mui/material/Box';
9
9
  import IconButton from '@mui/material/IconButton';
10
10
  import Typography from '@mui/material/Typography';
11
+ import Tooltip from '@mui/material/Tooltip';
11
12
  import Breadcrumbs from '@mui/material/Breadcrumbs';
12
13
  import DownloadIcon from '@mui/icons-material/Download';
13
14
  import DeleteIcon from '@mui/icons-material/Delete';
@@ -19,6 +20,7 @@ import Toast from '@arcblock/ux/lib/Toast';
19
20
  import Tag from '@arcblock/ux/lib/Tag';
20
21
  import RelativeTime from '@arcblock/ux/lib/RelativeTime';
21
22
  import { PROJECT } from '@blocklet/constant';
23
+ import InstallDesktopIcon from '@mui/icons-material/InstallDesktop';
22
24
  import { useBlockletContext } from '../../contexts/blocklet';
23
25
  import { useNodeContext } from '../../contexts/node';
24
26
  import EmptySpinner from '../../empty-spinner';
@@ -42,6 +44,7 @@ export default function ReleaseList() {
42
44
  const [releases, setReleases] = useState(null);
43
45
  const [project, setProject] = useState(null);
44
46
  const [deleteConfirm, setDeleteConfirm] = useState(null);
47
+ const serverEndpoint = window.env?.serverEndpoint;
45
48
  const getReleases = () => {
46
49
  api.getReleases({
47
50
  input: {
@@ -125,7 +128,7 @@ export default function ReleaseList() {
125
128
  "aria-label": "breadcrumb",
126
129
  children: [/*#__PURE__*/_jsx(Link, {
127
130
  to: "..",
128
- children: t('common.publish')
131
+ children: t('common.blockletStudio')
129
132
  }), /*#__PURE__*/_jsx(Typography, {
130
133
  color: "text.primary",
131
134
  children: project.blockletTitle
@@ -218,36 +221,77 @@ export default function ReleaseList() {
218
221
  options: {
219
222
  customBodyRenderLite: rawIndex => {
220
223
  const release = releases[rawIndex];
224
+ let installUrl = '';
225
+ let downloadUrl = '';
226
+ const published = release.status === 'published';
227
+ if (published) {
228
+ const blockletMetaUrl = joinUrl(serverEndpoint, `/api/project/${blocklet.meta.did}/${project.id}/${project.lastReleaseId}/release/blocklet.json`);
229
+ const url = new URL(serverEndpoint);
230
+ url.pathname = joinUrl(url.pathname, '/launch-blocklet/agreement');
231
+ url.searchParams.set('blocklet_meta_url', blockletMetaUrl);
232
+ installUrl = url.href;
233
+ downloadUrl = joinUrl(`${WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${blocklet.meta.did}/${project.id}/${project.lastReleaseId}/download/${(project.lastReleaseFiles || [])[0]}`);
234
+ }
235
+ console.error('--debug--', release);
221
236
  return /*#__PURE__*/_jsxs(Box, {
222
237
  display: "flex",
223
238
  alignItems: "center",
224
- children: [/*#__PURE__*/_jsx(IconButton, {
225
- color: "primary",
226
- "aria-label": "download",
227
- disabled: release.status !== 'published',
228
- children: release.status === 'published' ? /*#__PURE__*/_jsx("a", {
229
- style: {
230
- display: 'flex'
231
- },
232
- href: joinUrl(`${WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${blocklet.meta.did}/${project.id}/${release.id}/download/${(release.files || [])[0]}`),
233
- children: /*#__PURE__*/_jsx(DownloadIcon, {
239
+ children: [published && project.type === 'pack' && /*#__PURE__*/_jsx(Tooltip, {
240
+ title: t('blocklet.publish.install', {
241
+ name: project.blockletTitle
242
+ }),
243
+ placement: "top",
244
+ children: /*#__PURE__*/_jsx(IconButton, {
245
+ color: "secondary",
246
+ "aria-label": "create",
247
+ children: /*#__PURE__*/_jsx("a", {
248
+ style: {
249
+ display: 'flex'
250
+ },
251
+ href: installUrl,
252
+ target: "_blank",
253
+ rel: "noreferrer",
254
+ children: /*#__PURE__*/_jsx(InstallDesktopIcon, {
255
+ sx: {
256
+ fontSize: 18
257
+ }
258
+ })
259
+ })
260
+ })
261
+ }), published && /*#__PURE__*/_jsx(Tooltip, {
262
+ title: t('blocklet.publish.download', {
263
+ name: project.blockletTitle
264
+ }),
265
+ placement: "top",
266
+ children: /*#__PURE__*/_jsx(IconButton, {
267
+ color: "primary",
268
+ "aria-label": "download",
269
+ children: /*#__PURE__*/_jsx("a", {
270
+ style: {
271
+ display: 'flex'
272
+ },
273
+ href: downloadUrl,
274
+ children: /*#__PURE__*/_jsx(DownloadIcon, {
275
+ sx: {
276
+ fontSize: 18
277
+ }
278
+ })
279
+ })
280
+ })
281
+ }), /*#__PURE__*/_jsx(Tooltip, {
282
+ title: t('blocklet.publish.delete', {
283
+ name: project.blockletTitle
284
+ }),
285
+ placement: "top",
286
+ children: /*#__PURE__*/_jsx(IconButton, {
287
+ color: "primary",
288
+ "aria-label": "delete",
289
+ onClick: () => onDeleteRelease(release),
290
+ children: /*#__PURE__*/_jsx(DeleteIcon, {
234
291
  sx: {
235
292
  fontSize: 18
236
293
  }
237
294
  })
238
- }) : /*#__PURE__*/_jsx(DownloadIcon, {
239
- sx: {
240
- fontSize: 18
241
- }
242
- })
243
- }), /*#__PURE__*/_jsx(IconButton, {
244
- color: "primary",
245
- "aria-label": "delete",
246
- onClick: () => onDeleteRelease(release),
247
- children: /*#__PURE__*/_jsx(DeleteIcon, {
248
- sx: {
249
- fontSize: 18
250
- }
251
295
  })
252
296
  })]
253
297
  });
package/es/locales/ar.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'معاينة',
257
257
  protected: 'محمي',
258
258
  protocol: 'بروتوكول',
259
- publish: 'نشر',
260
259
  published: 'نشرت',
261
260
  purchase: 'شراء',
262
261
  readMore: 'أكثر',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'الاتصال بالمتجر',
354
353
  uploaded: 'تم التحميل',
355
354
  uploadToStore: 'تحميل إلى المتجر',
356
- upload: 'تحميل'
355
+ upload: 'تحميل',
356
+ blockletStudio: 'استوديو بلوكليت'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'خارجي',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'وثيقة المساعدة',
693
693
  componentIncluded: 'مدرج',
694
694
  componentForceRequired: 'مجبر مطلوب',
695
- productListTitle: 'نشر بلوكلتس',
695
+ productListTitle: 'استوديو بلوكليت',
696
696
  download: 'تحميل {name}',
697
697
  delete: 'احذف {name}',
698
698
  copyInstallUrl: 'انسخ عنوان URL للتثبيت',
699
699
  install: 'تثبيت {name}',
700
700
  publishToStoreSuccess: 'تم نشر بلوكليت بنجاح في المتجر',
701
701
  connectStoreSuccess: 'تم الاتصال بمتجر البلوكليت بنجاح',
702
- uploadToStoreSuccess: 'تم تحميل بلوكليت بنجاح في المتجر ، تحتاج إلى نشره في المتجر'
702
+ uploadToStoreSuccess: 'تم تحميل بلوكليت بنجاح في المتجر ، تحتاج إلى نشره في المتجر',
703
+ viewLastRelease: 'عرض آخر إصدار'
703
704
  },
704
705
  titleValidationError: 'يجب أن يكون طول العنوان على الأقل 3 أحرف',
705
706
  descriptionValidationError: 'يجب أن تكون طول الوصف بين 3 و 160 حرفًا'
package/es/locales/de.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'Vorschau',
257
257
  protected: 'Geschützt',
258
258
  protocol: 'Protokoll',
259
- publish: 'Veröffentlichen',
260
259
  published: 'Veröffentlicht',
261
260
  purchase: 'Kauf',
262
261
  readMore: 'Mehr',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'Verbinden Sie mit dem Geschäft',
354
353
  uploaded: 'Hochgeladen',
355
354
  uploadToStore: 'Upload in den Shop',
356
- upload: 'Hochladen'
355
+ upload: 'Hochladen',
356
+ blockletStudio: 'Blocklet Studio'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'Extern',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'Hilfe-Dokument',
693
693
  componentIncluded: 'Eingeschlossen',
694
694
  componentForceRequired: 'Erzwungen Erforderlich',
695
- productListTitle: 'Veröffentliche Blocklets',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: 'Download {name}',
697
697
  delete: 'Lösche {name}',
698
698
  copyInstallUrl: 'Kopiere Installations-URL',
699
699
  install: 'Installiere {name}',
700
700
  publishToStoreSuccess: 'Blocklet erfolgreich im Store veröffentlicht',
701
701
  connectStoreSuccess: 'Blocklet Store erfolgreich verbunden',
702
- uploadToStoreSuccess: 'Blocklet erfolgreich im Store hochgeladen, du musst es im Store veröffentlichen'
702
+ uploadToStoreSuccess: 'Blocklet erfolgreich im Store hochgeladen, du musst es im Store veröffentlichen',
703
+ viewLastRelease: 'Letzte Version anzeigen'
703
704
  },
704
705
  titleValidationError: 'Die Länge des Titels muss mindestens 3 Zeichen betragen',
705
706
  descriptionValidationError: 'Die Beschreibungslänge muss zwischen 3 und 160 Zeichen liegen'
package/es/locales/en.js CHANGED
@@ -167,7 +167,7 @@ export default {
167
167
  download: 'Download',
168
168
  uploadToStore: 'Upload to Store',
169
169
  connectToStore: 'Connect to Store',
170
- publish: 'Publish',
170
+ blockletStudio: 'Blocklet Studio',
171
171
  upload: 'Upload',
172
172
  uploaded: 'Uploaded',
173
173
  downloading: 'Downloading',
@@ -645,7 +645,7 @@ export default {
645
645
  isInProgress: 'Blocklet is in progress, please wait for it to finish'
646
646
  },
647
647
  publish: {
648
- productListTitle: 'Publish Blocklets',
648
+ productListTitle: 'Blocklet Studio',
649
649
  download: 'Download {name}',
650
650
  delete: 'Delete {name}',
651
651
  copyInstallUrl: 'Copy Install URL',
@@ -661,6 +661,7 @@ export default {
661
661
  deleteBlockletTip: 'The blocklet cannot be recovered after deletion, please confirm',
662
662
  componentNotRunning: 'Component {name} is not running, please start it first',
663
663
  releaseEmptyTip: 'There aren’t any releases here',
664
+ viewLastRelease: 'View last release',
664
665
  createReleaseTip: 'You can create a release of the blocklet, along with release notes and resources, for other people to use',
665
666
  createRelease: 'New release',
666
667
  deleteReleaseTip: 'The release cannot be recovered after deletion',
package/es/locales/es.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'Vista previa',
257
257
  protected: 'Protegido',
258
258
  protocol: 'Protocolo',
259
- publish: 'Publicar',
260
259
  published: 'Publicado',
261
260
  purchase: 'Compra',
262
261
  readMore: 'Más',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'Conectar a la tienda',
354
353
  uploaded: 'Subido',
355
354
  uploadToStore: 'Subir a la tienda',
356
- upload: 'Subir'
355
+ upload: 'Subir',
356
+ blockletStudio: 'Blocklet Studio'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'Externo',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'Ayuda Documento',
693
693
  componentIncluded: 'Incluido',
694
694
  componentForceRequired: 'Obligatorio Requerido',
695
- productListTitle: 'Publicar Blocklets',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: 'Descargar {name}',
697
697
  delete: 'Eliminar {name}',
698
698
  copyInstallUrl: 'Copiar URL de instalación',
699
699
  install: 'Instalar {name}',
700
700
  publishToStoreSuccess: 'Bloque publicado en la tienda exitosamente',
701
701
  connectStoreSuccess: 'La tienda de Blocklet se conectó correctamente',
702
- uploadToStoreSuccess: 'Bloque de carga a la tienda exitosamente, necesitas publicarlo en la tienda'
702
+ uploadToStoreSuccess: 'Bloque de carga a la tienda exitosamente, necesitas publicarlo en la tienda',
703
+ viewLastRelease: 'Ver última versión'
703
704
  },
704
705
  titleValidationError: 'La longitud del título debe ser de al menos 3 caracteres',
705
706
  descriptionValidationError: 'La longitud de la descripción debe estar entre 3 y 160 caracteres'
package/es/locales/fr.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'Aperçu',
257
257
  protected: 'Protégé',
258
258
  protocol: 'Protocole',
259
- publish: 'Publier',
260
259
  published: 'Publié',
261
260
  purchase: 'Achat',
262
261
  readMore: 'Plus',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'Se connecter au magasin',
354
353
  uploaded: 'Téléchargé',
355
354
  uploadToStore: 'Télécharger vers le magasin',
356
- upload: 'Télécharger'
355
+ upload: 'Télécharger',
356
+ blockletStudio: 'Studio Blocklet'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'Externe',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: "Document d'aide",
693
693
  componentIncluded: 'Inclus',
694
694
  componentForceRequired: 'Forcé Requis',
695
- productListTitle: 'Publier des Blocklets',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: 'Télécharger {name}',
697
697
  delete: 'Supprimez {name}',
698
698
  copyInstallUrl: "Copier l'URL d'installation",
699
699
  install: 'Installer {name}',
700
700
  publishToStoreSuccess: 'Blocklet publié avec succès dans le magasin',
701
701
  connectStoreSuccess: 'Connexion réussie au Blocklet Store',
702
- uploadToStoreSuccess: 'Blocklet téléchargé avec succès dans le Store, vous devez le publier dans le Store'
702
+ uploadToStoreSuccess: 'Blocklet téléchargé avec succès dans le Store, vous devez le publier dans le Store',
703
+ viewLastRelease: 'Voir la dernière version'
703
704
  },
704
705
  titleValidationError: "La longueur du titre doit être d'au moins 3 caractères",
705
706
  descriptionValidationError: 'La longueur de la description doit être comprise entre 3 et 160 caractères'
package/es/locales/hi.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'पूर्वावलोकन',
257
257
  protected: 'संरक्षित',
258
258
  protocol: 'प्रोटोकॉल',
259
- publish: 'प्रकाशित करें',
260
259
  published: 'प्रकाशित',
261
260
  purchase: 'खरीद',
262
261
  readMore: 'अधिक',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'स्टोर से जुड़ें',
354
353
  uploaded: 'अपलोड किया गया',
355
354
  uploadToStore: 'स्टोर में अपलोड करें',
356
- upload: 'अपलोड करें'
355
+ upload: 'अपलोड करें',
356
+ blockletStudio: 'ब्लॉकलेट स्टूडियो'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'बाहरी',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'सहायता दस्तावेज़',
693
693
  componentIncluded: 'शामिल',
694
694
  componentForceRequired: 'मजबूरी आवश्यक',
695
- productListTitle: 'ब्लॉकलेट प्रकाशित करें',
695
+ productListTitle: 'ब्लोकलेट स्टूडियो',
696
696
  download: 'डाउनलोड {name}',
697
697
  delete: '{नाम} को हटाएं',
698
698
  copyInstallUrl: 'संपादित स्थापित URL की प्रतिलिपि',
699
699
  install: '{name} स्थापित करें',
700
700
  publishToStoreSuccess: 'सफलतापूर्वक स्टोर में ब्लॉकलेट प्रकाशित',
701
701
  connectStoreSuccess: 'ब्लॉकलेट स्टोर सफलतापूर्वक कनेक्ट हो गया',
702
- uploadToStoreSuccess: 'ब्लॉकलेट को स्टोर में सफलतापूर्वक अपलोड किया गया है, आपको इसे स्टोर में प्रकाशित करने की आवश्यकता है'
702
+ uploadToStoreSuccess: 'ब्लॉकलेट को स्टोर में सफलतापूर्वक अपलोड किया गया है, आपको इसे स्टोर में प्रकाशित करने की आवश्यकता है',
703
+ viewLastRelease: 'अंतिम रिलीज़ देखें'
703
704
  },
704
705
  titleValidationError: 'शीर्षक की लंबाई कम से कम 3 अक्षर होनी चाहिए',
705
706
  descriptionValidationError: 'विवरण की लंबाई 3 और 160 वर्णों के बीच होनी चाहिए'
Binary file
package/es/locales/id.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'Pratinjau',
257
257
  protected: 'Terlindungi',
258
258
  protocol: 'Protokol',
259
- publish: 'Menerbitkan',
260
259
  published: 'Dipublikasikan',
261
260
  purchase: 'Pembelian',
262
261
  readMore: 'Lebih',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'Terhubung ke Toko',
354
353
  uploaded: 'Diunggah',
355
354
  uploadToStore: 'Unggah ke Toko',
356
- upload: 'Unggah'
355
+ upload: 'Unggah',
356
+ blockletStudio: 'Blocklet Studio'
357
357
  },
358
358
  blocklet: {
359
359
  external: 'Eksternal',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'Dokumen Bantuan',
693
693
  componentIncluded: 'Termasuk',
694
694
  componentForceRequired: 'Dipaksa Diperlukan',
695
- productListTitle: 'Terbitkan Blocklets',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: 'Unduh {name}',
697
697
  delete: 'Hapus {name}',
698
698
  copyInstallUrl: 'Salin URL Instalasi',
699
699
  install: 'Pasang {name}',
700
700
  publishToStoreSuccess: 'Blocklet berhasil dipublikasikan ke Store',
701
701
  connectStoreSuccess: 'Penyimpanan Blocklet berhasil terhubung',
702
- uploadToStoreSuccess: 'Blocklet berhasil diunggah ke Store, Anda perlu mempublikasikannya di Store'
702
+ uploadToStoreSuccess: 'Blocklet berhasil diunggah ke Store, Anda perlu mempublikasikannya di Store',
703
+ viewLastRelease: 'Tampilkan rilis terakhir'
703
704
  },
704
705
  titleValidationError: 'Panjang judul harus setidaknya 3 karakter',
705
706
  descriptionValidationError: 'Panjang deskripsi harus antara 3 dan 160 karakter.'
package/es/locales/ja.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: 'プレビュー',
257
257
  protected: '保護された',
258
258
  protocol: 'プロトコル',
259
- publish: '公開する',
260
259
  published: '公開済み',
261
260
  purchase: '購入',
262
261
  readMore: 'もっと',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: 'ストアに接続する',
354
353
  uploaded: 'アップロードされました',
355
354
  uploadToStore: 'ストアにアップロード',
356
- upload: 'アップロード'
355
+ upload: 'アップロード',
356
+ blockletStudio: 'Blocklet Studio'
357
357
  },
358
358
  blocklet: {
359
359
  external: '外部',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: 'ヘルプドキュメント',
693
693
  componentIncluded: '含まれています',
694
694
  componentForceRequired: '強制必要',
695
- productListTitle: 'Blockletsを公開する',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: 'ダウンロード {name}',
697
697
  delete: '削除 {name}',
698
698
  copyInstallUrl: 'インストールURLをコピーする',
699
699
  install: '{name}をインストールする',
700
700
  publishToStoreSuccess: 'ブロックレットが正常にストアに公開されました',
701
701
  connectStoreSuccess: 'Blockletストアが正常に接続されました',
702
- uploadToStoreSuccess: 'ブロックレットがストアに正常にアップロードされました。ストアで公開する必要があります'
702
+ uploadToStoreSuccess: 'ブロックレットがストアに正常にアップロードされました。ストアで公開する必要があります',
703
+ viewLastRelease: '最新リリースを表示する'
703
704
  },
704
705
  titleValidationError: 'タイトルの長さは最低3文字以上である必要があります',
705
706
  descriptionValidationError: '説明の長さは3から160文字の間でなければなりません'
package/es/locales/ko.js CHANGED
@@ -256,7 +256,6 @@ export default {
256
256
  preview: '미리보기',
257
257
  protected: '보호됨',
258
258
  protocol: '프로토콜',
259
- publish: '게시',
260
259
  published: '게시됨',
261
260
  purchase: '구매',
262
261
  readMore: '더',
@@ -353,7 +352,8 @@ export default {
353
352
  connectToStore: '상점에 연결하기',
354
353
  uploaded: '업로드되었습니다',
355
354
  uploadToStore: '스토어에 업로드',
356
- upload: '업로드'
355
+ upload: '업로드',
356
+ blockletStudio: 'Blocklet Studio'
357
357
  },
358
358
  blocklet: {
359
359
  external: '외부의',
@@ -692,14 +692,15 @@ export default {
692
692
  installResourceHelp: '도움말 문서',
693
693
  componentIncluded: '포함됨',
694
694
  componentForceRequired: '강제 필수',
695
- productListTitle: '블록렛 게시',
695
+ productListTitle: 'Blocklet Studio',
696
696
  download: '{name} 다운로드하기',
697
697
  delete: '{name} 삭제',
698
698
  copyInstallUrl: '설치 URL 복사하기',
699
699
  install: '{name}을(를) 설치하세요',
700
700
  publishToStoreSuccess: 'Store에 블록릿 성공적으로 발행됐습니다',
701
701
  connectStoreSuccess: '블록렛 스토어가 성공적으로 연결되었습니다',
702
- uploadToStoreSuccess: '블록렛이 성공적으로 스토어에 업로드되었습니다. 스토어에서 게시해야 합니다'
702
+ uploadToStoreSuccess: '블록렛이 성공적으로 스토어에 업로드되었습니다. 스토어에서 게시해야 합니다',
703
+ viewLastRelease: '최신 릴리스 보기'
703
704
  },
704
705
  titleValidationError: '제목 길이는 최소 3자 이상이어야 합니다',
705
706
  descriptionValidationError: '설명 길이는 3에서 160자 사이여야 합니다'