Merge branch '4.7' into 4

This commit is contained in:
Garion Herman 2020-12-22 14:22:49 +13:00
commit bae853837e
10 changed files with 106 additions and 118 deletions

View File

@ -1,99 +1,10 @@
language: php version: ~> 1.0
dist: xenial import:
- silverstripe/silverstripe-travis-shared:config/provision/standard-jobs-fixed-behat-npm.yml
services:
- mysql
- postgresql
- xvfb
cache:
directories:
- $HOME/.composer/cache/files
addons:
apt:
packages:
- tidy
- chromium-chromedriver
- chromium-browser
env: env:
global: global:
- COMPOSER_ROOT_VERSION="4.x-dev" - COMPOSER_ROOT_VERSION="4.x-dev"
- TRAVIS_NODE_VERSION="10" - REQUIRE_RECIPE="4.x-dev"
- DISPLAY=":99" - BEHAT_SUITE="cms"
- XVFBARGS=":99 -ac -screen 0 1024x768x16"
- SS_BASE_URL="http://localhost:8080/"
- SS_ENVIRONMENT_TYPE="dev"
matrix:
fast_finish: true
include:
- php: 7.1
env: DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 PHPCS_TEST=1 PDO=1 COMPOSER_ARG=--prefer-lowest
- php: 7.1
env: BACKWARD_COMPAT=1 DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 PHPCS_TEST=1 PDO=1 COMPOSER_ARG=--prefer-lowest
- php: 7.2
env: DB=PGSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 PHPUNIT_COVERAGE_TEST=1
- php: 7.3
env: DB=MYSQL RECIPE_VERSION=4.x-dev BEHAT_TEST=1
- php: 7.3
env: DB=MYSQL RECIPE_VERSION=4.x-dev BEHAT_TEST=1 BACKWARD_COMPAT=1
- php: 7.3
env: DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 NPM_TEST=1
- php: 7.4
env: DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1
- php: nightly
env: DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 COMPOSER_ARG=--ignore-platform-reqs WITH_XDEBUG=1
before_script:
# Extra $PATH
- export PATH=/usr/lib/chromium-browser/:$PATH
# Init PHP
- phpenv rehash
- if [[ ! $WITH_XDEBUG ]] ; then phpenv config-rm xdebug.ini; fi
- export PATH=~/.composer/vendor/bin:$PATH
- echo 'memory_limit = 2G' >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
# Install composer dependencies
- composer validate
- composer require --no-update silverstripe/recipe-cms:$RECIPE_VERSION silverstripe/recipe-testing:^1
# Fix for running phpunit 5 on php 7.4+
- composer require --no-update sminnee/phpunit-mock-objects:^3
- if [[ $DB == PGSQL ]]; then composer require --no-update silverstripe/postgresql:^2; fi
- 'if [[ ! $BACKWARD_COMPAT ]]; then composer require silverstripe/graphql:4.x-dev --no-update; fi'
- composer update --prefer-source --no-interaction --no-progress --no-suggest --optimize-autoloader --verbose --profile $COMPOSER_ARG
# Install NPM dependencies
- if [[ $NPM_TEST ]]; then nvm install $TRAVIS_NODE_VERSION && nvm use $TRAVIS_NODE_VERSION && npm install -g yarn && yarn install --network-concurrency 1 && yarn run build; fi
# Remove preinstalled Chrome (google-chrome)
# this would conflict with our chromium-browser installation
# and its version is incompatible with chromium-chromedriver
- sudo apt-get remove -y --purge google-chrome-stable || true
# Start behat services
- if [[ $BEHAT_TEST ]]; then mkdir artifacts; fi
- if [[ $BEHAT_TEST ]]; then cp composer.lock artifacts/; fi
- if [[ $BEHAT_TEST ]]; then sh -e /etc/init.d/xvfb start; sleep 3; fi
- if [[ $BEHAT_TEST ]]; then (chromedriver > artifacts/chromedriver.log 2>&1 &); fi
- if [[ $BEHAT_TEST ]]; then (vendor/bin/serve --bootstrap-file tests/behat/serve-bootstrap.php &> artifacts/serve.log &); fi
script:
- if [[ $PHPUNIT_TEST ]]; then vendor/bin/phpunit tests/php/ flush=1; fi
- if [[ $BEHAT_TEST ]]; then vendor/bin/behat @cms; fi
- if [[ $NPM_TEST ]]; then git diff-files --quiet -w --relative=client; fi
- if [[ $NPM_TEST ]]; then git diff -w --no-color --relative=client; fi
- if [[ $NPM_TEST ]]; then yarn run lint; fi
- if [[ $NPM_TEST ]]; then yarn run test; fi
- if [[ $PHPCS_TEST ]]; then composer run-script lint; fi
after_success:
- if [[ $PHPUNIT_COVERAGE_TEST ]]; then bash <(curl -s https://codecov.io/bash) -f coverage.xml; fi
after_failure:
- if [[ $BEHAT_TEST ]]; then php ./vendor/silverstripe/framework/tests/behat/travis-upload-artifacts.php --if-env BEHAT_TEST,ARTIFACTS_BUCKET,ARTIFACTS_KEY,ARTIFACTS_SECRET --target-path $TRAVIS_REPO_SLUG/$TRAVIS_BUILD_ID/$TRAVIS_JOB_ID --artifacts-base-url https://s3.amazonaws.com/$ARTIFACTS_BUCKET/ --artifacts-path ./artifacts/; fi

File diff suppressed because one or more lines are too long

View File

@ -29,7 +29,8 @@
"php": "^7.1 || ^8" "php": "^7.1 || ^8"
}, },
"require-dev": { "require-dev": {
"sminnee/phpunit": "^5.7" "sminnee/phpunit": "^5.7",
"squizlabs/php_codesniffer": "^3"
}, },
"extra": { "extra": {
"expose": [ "expose": [

View File

@ -34,12 +34,14 @@ da:
NEWPAGE: 'Ny {pagetype}' NEWPAGE: 'Ny {pagetype}'
PAGENOTEXISTS: 'Denne side eksisterer ikke' PAGENOTEXISTS: 'Denne side eksisterer ikke'
PAGES: 'Side status' PAGES: 'Side status'
PAGESALLOPT: 'Alle sider'
PAGETYPEANYOPT: Enhver PAGETYPEANYOPT: Enhver
PAGETYPEOPT: Sidetype PAGETYPEOPT: Sidetype
PAGETYPE_TITLE: '(Sidetype: {type}) {title}' PAGETYPE_TITLE: '(Sidetype: {type}) {title}'
PLEASESAVE: 'Gem siden: Denne side kunne ikke opdateres, da den endnu ikke er gemt.' PLEASESAVE: 'Gem siden: Denne side kunne ikke opdateres, da den endnu ikke er gemt.'
PUBALLCONFIRM: 'Udgiv alle sider på sitet. Kopierer indhold fra kladde til offentlig' PUBALLCONFIRM: 'Udgiv alle sider på sitet. Kopierer indhold fra kladde til offentlig'
PUBALLFUN: '"Udgiv alle" funktionalitet' PUBALLFUN: '"Udgiv alle" funktionalitet'
PUBALLFUN2: "Hvis du trykker på denne knap, svarer det til at gå til hver enkel side og vælge udgiv. Det er hensigten at denne funktion benyttes når der er blevet lavet mange ændringer på flere sider, som f.eks da websitet blev påbegyndt.\nFor store webløsninger, er det måske ikke muligt at køre denne. I så fald bør du tale med din webudvikler om at lave en special \"dev task\"."
PUBLISHED: 'Udgav ''{title}'' med succes' PUBLISHED: 'Udgav ''{title}'' med succes'
PUBPAGES: 'Færdig: Udgav {count} sider' PUBPAGES: 'Færdig: Udgav {count} sider'
PageAdded: 'Siden blev oprettet med succes' PageAdded: 'Siden blev oprettet med succes'
@ -55,6 +57,8 @@ da:
ROLLEDBACKPUBv2: 'Rullede tilbage til den udgivne version.' ROLLEDBACKPUBv2: 'Rullede tilbage til den udgivne version.'
ROLLEDBACKVERSIONv2: 'Rullede tilbage til version #{version}.' ROLLEDBACKVERSIONv2: 'Rullede tilbage til version #{version}.'
SAVED: 'Gemte ''{title}'' succesfuldt' SAVED: 'Gemte ''{title}'' succesfuldt'
SAVEDRAFT: Gem
SEARCHRESULTS: Søgeresultater
SHOW_AS_LIST: 'Vis som liste' SHOW_AS_LIST: 'Vis som liste'
TOO_MANY_PAGES: 'For mange sider' TOO_MANY_PAGES: 'For mange sider'
TabContent: Indhold TabContent: Indhold
@ -75,6 +79,7 @@ da:
SilverStripe\CMS\Controllers\CMSPageHistoryController: SilverStripe\CMS\Controllers\CMSPageHistoryController:
AUTHOR: Forfatter AUTHOR: Forfatter
COMPAREMODE: 'Sammenligningstilstand (vælg to)' COMPAREMODE: 'Sammenligningstilstand (vælg to)'
COMPARINGVERSION: 'Sammenligner versionerne {version1} og {version2}.'
MENUTITLE: Historik MENUTITLE: Historik
MULTISELECT: Handlinger MULTISELECT: Handlinger
NOTPUBLISHED: 'Ikke udgivet' NOTPUBLISHED: 'Ikke udgivet'
@ -142,6 +147,7 @@ da:
SELECT_PAGE: 'Vælg en side' SELECT_PAGE: 'Vælg en side'
SilverStripe\CMS\Forms\SiteTreeURLSegmentField: SilverStripe\CMS\Forms\SiteTreeURLSegmentField:
Cancel: Annuller Cancel: Annuller
EMPTY: 'Indtast en URL eller klik annuller'
Edit: Rediger Edit: Rediger
HelpChars: 'Specialkarakterer bliver automatisk konverteret eller fjernet.' HelpChars: 'Specialkarakterer bliver automatisk konverteret eller fjernet.'
OK: OK OK: OK
@ -175,6 +181,7 @@ da:
BUTTONDELETEDESC: 'Fjern fra kladde og udgivet og læg i arkiv' BUTTONDELETEDESC: 'Fjern fra kladde og udgivet og læg i arkiv'
BUTTONPUBLISHED: Udgivet BUTTONPUBLISHED: Udgivet
BUTTONSAVED: Gemt BUTTONSAVED: Gemt
BUTTONSAVEPUBLISH: Udgiv
BUTTONUNPUBLISH: 'Annuller udgivelse' BUTTONUNPUBLISH: 'Annuller udgivelse'
BUTTONUNPUBLISHDESC: 'Fjern denne side fra det udgivne websted' BUTTONUNPUBLISHDESC: 'Fjern denne side fra det udgivne websted'
Comments: Kommentarer Comments: Kommentarer
@ -197,13 +204,14 @@ da:
HASBROKENLINKS: 'Denne side har links der ikke virker.' HASBROKENLINKS: 'Denne side har links der ikke virker.'
HTMLEDITORTITLE: Indhold HTMLEDITORTITLE: Indhold
INHERIT: 'Nedarv fra overliggende side' INHERIT: 'Nedarv fra overliggende side'
INHERITSITECONFIG: 'Nedarv fra løsnings adgangs indstillinger'
LASTPUBLISHED: 'Seneste udgivet' LASTPUBLISHED: 'Seneste udgivet'
LASTSAVED: 'Senest gemt' LASTSAVED: 'Senest gemt'
LASTUPDATED: 'Sidst opdateret' LASTUPDATED: 'Sidst opdateret'
LINKCHANGENOTE: 'Ved at ændre denne sides link, ændrer du også linket til alle underliggende sider.' LINKCHANGENOTE: 'Ved at ændre denne sides link, ændrer du også linket til alle underliggende sider.'
LINKSALREADYUNIQUE: ' {url} er allerede unik' LINKSALREADYUNIQUE: ' {url} er allerede unik'
LINKSCHANGEDTO: ' ændrede {url1} -> {url2}' LINKSCHANGEDTO: ' ændrede {url1} -> {url2}'
MENUTITLE: Navigationsetiket MENUTITLE: 'Navn i menu'
METADESC: Meta-beskrivelse METADESC: Meta-beskrivelse
METADESCHELP: 'Søgemaskiner viser dette indhold i søgeresultaterne (teksten påvirker ikke placeringen).' METADESCHELP: 'Søgemaskiner viser dette indhold i søgeresultaterne (teksten påvirker ikke placeringen).'
METAEXTRA: 'Brugerdefinerede Meta Tags' METAEXTRA: 'Brugerdefinerede Meta Tags'
@ -238,8 +246,12 @@ da:
SHOWINSEARCH: 'Vis i søgninger?' SHOWINSEARCH: 'Vis i søgninger?'
SINGULARNAME: Side SINGULARNAME: Side
TABBEHAVIOUR: Opførsel TABBEHAVIOUR: Opførsel
TABCONTENT: 'Primært indhold'
TABDEPENDENT: 'Afhængige sider' TABDEPENDENT: 'Afhængige sider'
TOPLEVEL: 'Sideindhold (Top niveau)' TOPLEVEL: 'Sideindhold (Top niveau)'
UNTITLED: 'Ny {pagetype}'
URLSegment: 'URL adresse'
UntitledDependentObject: 'Unavngivet {instanceType}'
VIEWERGROUPS: Visningsgrupper VIEWERGROUPS: Visningsgrupper
VIEWER_GROUPS_FIELD_DESC: 'Grupper med globale se rettigheder: {groupList}' VIEWER_GROUPS_FIELD_DESC: 'Grupper med globale se rettigheder: {groupList}'
VIEW_ALL_DESCRIPTION: 'Vis enhver side' VIEW_ALL_DESCRIPTION: 'Vis enhver side'
@ -259,6 +271,14 @@ da:
TITLE_INDEX: '#' TITLE_INDEX: '#'
TITLE_TYPE: Type TITLE_TYPE: Type
TITLE_USED_ON: 'Brugt på' TITLE_USED_ON: 'Brugt på'
SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension:
USAGE: Brug
SilverStripe\CMS\Model\SiteTreeLink:
PLURALNAME: 'Sidetræ links'
PLURALS:
one: 'Et sidetræ link'
other: '{count} Sidetræ links'
SINGULARNAME: 'Sidetræ link'
SilverStripe\CMS\Model\VirtualPage: SilverStripe\CMS\Model\VirtualPage:
CHOOSE: 'Linket side' CHOOSE: 'Linket side'
DESCRIPTION: 'Viser indholdet fra en anden side' DESCRIPTION: 'Viser indholdet fra en anden side'

View File

@ -34,12 +34,14 @@ eo:
NEWPAGE: 'Nova {pagetype}' NEWPAGE: 'Nova {pagetype}'
PAGENOTEXISTS: 'Ĉi tiu paĝo ne ekzistas' PAGENOTEXISTS: 'Ĉi tiu paĝo ne ekzistas'
PAGES: 'Stato de paĝo' PAGES: 'Stato de paĝo'
PAGESALLOPT: 'Ĉiuj paĝoj'
PAGETYPEANYOPT: Ajna PAGETYPEANYOPT: Ajna
PAGETYPEOPT: 'Tipo de paĝo' PAGETYPEOPT: 'Tipo de paĝo'
PAGETYPE_TITLE: '(Paĝa tipo: {type}) {title}' PAGETYPE_TITLE: '(Paĝa tipo: {type}) {title}'
PLEASESAVE: 'Bonvolu konservi paĝon: ne povis ĝisdatigi ĉi tiun paĝon ĉar ĝi ankoraŭ estas nekonservita.' PLEASESAVE: 'Bonvolu konservi paĝon: ne povis ĝisdatigi ĉi tiun paĝon ĉar ĝi ankoraŭ estas nekonservita.'
PUBALLCONFIRM: 'Bonvolu eldoni ĉiun paĝon en la retejo, kopiante enhavan stadion al la publika' PUBALLCONFIRM: 'Bonvolu eldoni ĉiun paĝon en la retejo, kopiante enhavan stadion al la publika'
PUBALLFUN: 'Funkcio "Eldoni Ĉiujn"' PUBALLFUN: 'Funkcio "Eldoni Ĉiujn"'
PUBALLFUN2: 'Premi ĉi tiun butonon faros same kiel iri al ĉiu paĝo kaj premi je "Publikigi". Oni celas ke ĝi uziĝu post multaj redaktoj de la enhavo, ekzemple kiam la retejo unue konstruiĝis. Por grandaj retejoj, ĉi tiu tasko eble ne ruliĝos ĝis kompleteco. Tiuokaze, ni rekomendas ke vi parolu kun viaj programistoj por krei propran taskon.'
PUBLISHED: 'Sukcese publikigis je ''{title}''' PUBLISHED: 'Sukcese publikigis je ''{title}'''
PUBPAGES: 'Farite: publikigis {count} paĝojn' PUBPAGES: 'Farite: publikigis {count} paĝojn'
PageAdded: 'Sukcese kreis paĝon' PageAdded: 'Sukcese kreis paĝon'
@ -56,6 +58,7 @@ eo:
ROLLEDBACKVERSIONv2: 'Malfaris ŝanĝojn ĝis versio #{version}.' ROLLEDBACKVERSIONv2: 'Malfaris ŝanĝojn ĝis versio #{version}.'
SAVED: 'Sukcese konservis je ''{title}''' SAVED: 'Sukcese konservis je ''{title}'''
SAVEDRAFT: Konservi SAVEDRAFT: Konservi
SEARCHRESULTS: 'Rezultoj de serĉo'
SHOW_AS_LIST: 'vidigi kiel liston' SHOW_AS_LIST: 'vidigi kiel liston'
TOO_MANY_PAGES: 'Tro da paĝoj' TOO_MANY_PAGES: 'Tro da paĝoj'
TabContent: Enhavo TabContent: Enhavo
@ -76,6 +79,7 @@ eo:
SilverStripe\CMS\Controllers\CMSPageHistoryController: SilverStripe\CMS\Controllers\CMSPageHistoryController:
AUTHOR: Aŭtoro AUTHOR: Aŭtoro
COMPAREMODE: 'Kompara reĝimo (elektu du)' COMPAREMODE: 'Kompara reĝimo (elektu du)'
COMPARINGVERSION: 'Komparas versiojn {version1} kaj {version2}.'
MENUTITLE: Historio MENUTITLE: Historio
MULTISELECT: 'Staplaj agoj' MULTISELECT: 'Staplaj agoj'
NOTPUBLISHED: 'Ne publikigita' NOTPUBLISHED: 'Ne publikigita'
@ -143,6 +147,7 @@ eo:
SELECT_PAGE: 'Elekti paĝon' SELECT_PAGE: 'Elekti paĝon'
SilverStripe\CMS\Forms\SiteTreeURLSegmentField: SilverStripe\CMS\Forms\SiteTreeURLSegmentField:
Cancel: Rezigni Cancel: Rezigni
EMPTY: 'Bonvolu enigi URL-segmenton aŭ alklaki al Rezigni'
Edit: Redakti Edit: Redakti
HelpChars: 'Aŭtomate konvertas aŭ forigas specialajn signojn.' HelpChars: 'Aŭtomate konvertas aŭ forigas specialajn signojn.'
OK: Akcepti OK: Akcepti
@ -199,6 +204,7 @@ eo:
HASBROKENLINKS: 'Ĉi tiu paĝo havas rompitajn ligilojn.' HASBROKENLINKS: 'Ĉi tiu paĝo havas rompitajn ligilojn.'
HTMLEDITORTITLE: Enhavo HTMLEDITORTITLE: Enhavo
INHERIT: 'Heredi de patra paĝo' INHERIT: 'Heredi de patra paĝo'
INHERITSITECONFIG: 'Heredi el retejaliraj agordoj'
LASTPUBLISHED: 'Lasta publikigo' LASTPUBLISHED: 'Lasta publikigo'
LASTSAVED: 'Laste konservita' LASTSAVED: 'Laste konservita'
LASTUPDATED: 'Lastfoje ĝisdatigita' LASTUPDATED: 'Lastfoje ĝisdatigita'
@ -240,8 +246,12 @@ eo:
SHOWINSEARCH: 'Vidigi en serĉo?' SHOWINSEARCH: 'Vidigi en serĉo?'
SINGULARNAME: Paĝo SINGULARNAME: Paĝo
TABBEHAVIOUR: Konduto TABBEHAVIOUR: Konduto
TABCONTENT: 'Ĉefa enhavo'
TABDEPENDENT: 'Dependaj paĝoj' TABDEPENDENT: 'Dependaj paĝoj'
TOPLEVEL: 'Enhavo de Retejo (Supra Nivelo)' TOPLEVEL: 'Enhavo de Retejo (Supra Nivelo)'
UNTITLED: 'Sentitola {pagetype}'
URLSegment: URL-segmento
UntitledDependentObject: 'Sentitola {instanceType}'
VIEWERGROUPS: 'Grupoj de vidantoj' VIEWERGROUPS: 'Grupoj de vidantoj'
VIEWER_GROUPS_FIELD_DESC: 'Grupoj kun ĉieaj vidigaj permesoj: {groupList}' VIEWER_GROUPS_FIELD_DESC: 'Grupoj kun ĉieaj vidigaj permesoj: {groupList}'
VIEW_ALL_DESCRIPTION: 'Vidigi ajnan paĝon' VIEW_ALL_DESCRIPTION: 'Vidigi ajnan paĝon'

View File

@ -1,7 +1,7 @@
sl: sl:
SilverStripe\CMS\BatchActions\CMSBatchAction_Archive: SilverStripe\CMS\BatchActions\CMSBatchAction_Archive:
RESULT: 'Umaknili iz objave in arhivirali smo %d stran/i.' RESULT: 'Umaknili iz objave in arhivirali smo %d stran/i.'
TITLE: 'Odstrani iz objave in arhiviraj' TITLE: Arhiviraj
SilverStripe\CMS\BatchActions\CMSBatchAction_Publish: SilverStripe\CMS\BatchActions\CMSBatchAction_Publish:
PUBLISHED_PAGES: 'Objavili smo %d stran/i, neuspešnih je bilo %d poskus/ov.' PUBLISHED_PAGES: 'Objavili smo %d stran/i, neuspešnih je bilo %d poskus/ov.'
PUBLISH_PAGES: Objavi PUBLISH_PAGES: Objavi
@ -19,6 +19,10 @@ sl:
AddNew: 'Dodaj novo stran' AddNew: 'Dodaj novo stran'
AddNewButton: Dodaj AddNewButton: Dodaj
AddPageRestriction: 'Pozor: nekateri tipi strani niso dovoljeni za to izbiro' AddPageRestriction: 'Pozor: nekateri tipi strani niso dovoljeni za to izbiro'
ArchiveWarning: 'Stran bomo umaknili iz objave in arhivirali.\n\nŽelite nadaljevati?'
ArchiveWarningWithCampaigns: 'Stran bomo pred arhiviranjem odstranili iz vseh ({NumCampaigns}) kampanj.\n\nŽelite nadaljevati?'
ArchiveWarningWithChildren: 'Stran in njene podstrani bomo umaknili iz objave in arhivirali. Če jih boste želeli priklicali iz arhiva, boste morali vsako stran ponovno objaviti.\n\nŽelite nadaljevati?'
ArchiveWarningWithChildrenAndCampaigns: 'Stran in njene podstrani bomo pred arhiviranjem odstranili iz vseh ({NumCampaigns}) kampanj.\n\nŽelite nadaljevati?'
CANT_REORGANISE: 'Nimate pravic za spreminjanje strani na prvem nivoju, zato sprememb nismo shranili.' CANT_REORGANISE: 'Nimate pravic za spreminjanje strani na prvem nivoju, zato sprememb nismo shranili.'
Cancel: Prekliči Cancel: Prekliči
ChoosePageParentMode: 'Izberite mesto, kjer želite ustvariti novo stran' ChoosePageParentMode: 'Izberite mesto, kjer želite ustvariti novo stran'
@ -32,15 +36,16 @@ sl:
PAGES: Status PAGES: Status
PAGESALLOPT: 'Vse strani' PAGESALLOPT: 'Vse strani'
PAGETYPEANYOPT: Poljubna PAGETYPEANYOPT: Poljubna
PAGETYPEOPT: 'Tip stra' PAGETYPEOPT: 'Tip strani'
PAGETYPE_TITLE: '(Tip strani: {type}) {title}' PAGETYPE_TITLE: '(Tip strani: {type}) {title}'
PLEASESAVE: 'Shranite stran. Strani nismo mogli posodobiti, saj mora biti predhodno shranjena.' PLEASESAVE: 'Shranite stran. Strani nismo mogli posodobiti, saj mora biti predhodno shranjena.'
PUBALLCONFIRM: 'Objavite vse strani spletnega mesta (vsebine bodo prekopirane v "objavljeno" različico spletnega mesta).' PUBALLCONFIRM: 'Objavite vse strani spletnega mesta (vsebine bodo prekopirane v "objavljeno" različico spletnega mesta).'
PUBALLFUN: 'Funkcionalnost "Objavi vse"' PUBALLFUN: 'Funkcionalnost "Objavi vse"'
PUBALLFUN2: 'S to akcijo boste sprožili objavo vseh strani. Namenjena je objavljanju obsežnejših sprememb, kot je na primer lansiranje spletnega mesta. Pri obsežnejših spletnih mestih se akcija morda niti ne bo izvedla do konca. V tem primeru se obrnite na vašega razvijalca. '
PUBLISHED: 'Objavili smo stran ''{title}''.' PUBLISHED: 'Objavili smo stran ''{title}''.'
PUBPAGES: 'Opravljeno: Objavljenih je {count} strani' PUBPAGES: 'Opravljeno: Objavljenih je {count} strani'
PageAdded: 'Stran je bila uspešno ustvarjena' PageAdded: 'Stran je bila uspešno ustvarjena'
REMOVEDPAGE: '''{title}'' je odstranjen z objavljenega spletnega mesta. ' REMOVEDPAGE: '''{title}'' je odstranjena z objavljenega spletnega mesta. '
REMOVEDPAGEFROMDRAFT: 'Vsebina, odstranjena iz osnutka spletnega mesta: ''{title}''' REMOVEDPAGEFROMDRAFT: 'Vsebina, odstranjena iz osnutka spletnega mesta: ''{title}'''
REORGANISATIONSUCCESSFUL: 'Preuredili smo drevesno strukturo.' REORGANISATIONSUCCESSFUL: 'Preuredili smo drevesno strukturo.'
RESTORE: 'Obnovi osnutek' RESTORE: 'Obnovi osnutek'
@ -52,7 +57,7 @@ sl:
ROLLEDBACKPUBv2: 'Stran smo povrnili iz različice, ki je objavljena.' ROLLEDBACKPUBv2: 'Stran smo povrnili iz različice, ki je objavljena.'
ROLLEDBACKVERSIONv2: 'Stran smo povrnili iz različice #{version}.' ROLLEDBACKVERSIONv2: 'Stran smo povrnili iz različice #{version}.'
SAVED: 'Uspešno shranjeno ''{title}''.' SAVED: 'Uspešno shranjeno ''{title}''.'
SAVEDRAFT: 'Shrani osnutek' SAVEDRAFT: Shrani
SEARCHRESULTS: 'Rezultati iskanja' SEARCHRESULTS: 'Rezultati iskanja'
SHOW_AS_LIST: 'prikaži v obliki seznama' SHOW_AS_LIST: 'prikaži v obliki seznama'
TOO_MANY_PAGES: 'Preveč strani' TOO_MANY_PAGES: 'Preveč strani'
@ -60,8 +65,8 @@ sl:
TabHistory: Zgodovina TabHistory: Zgodovina
TabSettings: Nastavitve TabSettings: Nastavitve
TreeFiltered: 'Prikazani so rezultati iskanja.' TreeFiltered: 'Prikazani so rezultati iskanja.'
TreeFilteredClear: Odstrani TreeFilteredClear: Ponastavi
UNPUBLISH_AND_ARCHIVE: 'Odstrani iz objave in arhiviraj' UNPUBLISH_AND_ARCHIVE: 'Umakni iz objave in arhiviraj'
SilverStripe\CMS\Controllers\CMSPageAddController: SilverStripe\CMS\Controllers\CMSPageAddController:
MENUTITLE: 'Dodaj stran' MENUTITLE: 'Dodaj stran'
ParentMode_child: 'Nivo nižje' ParentMode_child: 'Nivo nižje'
@ -74,13 +79,14 @@ sl:
SilverStripe\CMS\Controllers\CMSPageHistoryController: SilverStripe\CMS\Controllers\CMSPageHistoryController:
AUTHOR: Avtor AUTHOR: Avtor
COMPAREMODE: 'Način primerjanja (izberite dve)' COMPAREMODE: 'Način primerjanja (izberite dve)'
COMPARINGVERSION: 'Primerjava med {version1} in {version2}.'
MENUTITLE: Zgodovina MENUTITLE: Zgodovina
MULTISELECT: 'Paketno urejanje' MULTISELECT: 'Paketno urejanje'
NOTPUBLISHED: 'Ni objavljeno' NOTPUBLISHED: 'Ni objavljeno'
PREVIEW: Predogled PREVIEW: Predogled
PUBLISHER: Objavljavec PUBLISHER: Objavljavec
REVERTTOTHISVERSION: 'Povrni v to različico' REVERTTOTHISVERSION: 'Povrni v to različico'
SHOWUNPUBLISHED: 'Pokaži neobjavljeno različico' SHOWUNPUBLISHED: 'Prikaži neobjavljeno različico'
UNKNOWN: Neznan UNKNOWN: Neznan
VIEW: prikaz VIEW: prikaz
VIEWINGLATEST: 'Prikazana je aktualna različica.' VIEWINGLATEST: 'Prikazana je aktualna različica.'
@ -106,7 +112,7 @@ sl:
SilverStripe\CMS\Controllers\CMSSiteTreeFilter_StatusDraftPages: SilverStripe\CMS\Controllers\CMSSiteTreeFilter_StatusDraftPages:
Title: Osnutki Title: Osnutki
SilverStripe\CMS\Controllers\CMSSiteTreeFilter_StatusRemovedFromDraftPages: SilverStripe\CMS\Controllers\CMSSiteTreeFilter_StatusRemovedFromDraftPages:
Title: 'Objavljeno, vendar odstranjeno iz ostnutka' Title: 'Objavljeno, vendar odstranjeno iz osnutka'
SilverStripe\CMS\Controllers\ContentController: SilverStripe\CMS\Controllers\ContentController:
ARCHIVEDSITE: 'Predogled različice' ARCHIVEDSITE: 'Predogled različice'
ARCHIVEDSITEFROM: 'Arhivirana različica iz' ARCHIVEDSITEFROM: 'Arhivirana različica iz'
@ -116,6 +122,7 @@ sl:
Email: E-pošta Email: E-pošta
INSTALL_SUCCESS: 'Namestitev je bila uspešna!' INSTALL_SUCCESS: 'Namestitev je bila uspešna!'
InstallFilesDeleted: 'Namestitvene datoteke so odstranjene.' InstallFilesDeleted: 'Namestitvene datoteke so odstranjene.'
InstallSecurityWarning: 'Iz varnostnih razlogov vam svetujemo, da sedaj odstanite namestitvene datoteke. Pustite jih samo v primeru, če nameravate sistem kmalu ponovno namestiti (<em>potrebna je prijava administratorja, glej zgoraj</em>). Prav tako spletni strežnik ne potrebuje več pravic za pisanje na nobeni mapi, razen na mapi "assets". Zato vam priporočamo, da pravice ustrezno nastavite. <a href="{link}" style="text-align: center;">Za odstranitev namestitvenih datotek kliknite tukaj.</a>'
InstallSuccessCongratulations: 'Silverstripe je uspešno nameščen.' InstallSuccessCongratulations: 'Silverstripe je uspešno nameščen.'
LOGGEDINAS: 'Prijavljen-a kot' LOGGEDINAS: 'Prijavljen-a kot'
LOGIN: Prijava LOGIN: Prijava
@ -125,6 +132,9 @@ sl:
PUBLISHED: Objavljeno PUBLISHED: Objavljeno
PUBLISHEDSITE: 'Objavljeno spletno mesto' PUBLISHEDSITE: 'Objavljeno spletno mesto'
Password: Geslo Password: Geslo
PostInstallTutorialIntro: 'Spletno mesto je poenostavljena različica spletišča na Silvestripe 3. Za razširitev obiščite {link}.'
StartEditing: 'Zdaj lahko začnete urejati vsebino. Prijavite se v <a href="{link}">sistem za upravljanje z vsebino</a>.'
UnableDeleteInstall: 'Namestitvenih datotek nismo mogli odstraniti, zato spodaj navedene datoteke odstranite ročno.'
VIEWPAGEIN: 'Ogled strani v:' VIEWPAGEIN: 'Ogled strani v:'
SilverStripe\CMS\Controllers\SilverStripeNavigator: SilverStripe\CMS\Controllers\SilverStripeNavigator:
ARCHIVED: Arhivirano ARCHIVED: Arhivirano
@ -178,44 +188,51 @@ sl:
BUTTONUNPUBLISHDESC: 'Umakni to stran iz objave' BUTTONUNPUBLISHDESC: 'Umakni to stran iz objave'
Comments: Komentarji Comments: Komentarji
Content: Vsebina Content: Vsebina
DEFAULTABOUTCONTENT: '<p>To stran lahko napolnite z lastno vsebino ali pa jo izbrišete in ustvarite novo.</p>'
DEFAULTABOUTTITLE: 'O nas' DEFAULTABOUTTITLE: 'O nas'
DEFAULTCONTACTCONTENT: '<p>To stran lahko napolnite z lastno vsebino ali pa jo izbrišete in ustvarite novo.</p>'
DEFAULTCONTACTTITLE: Kontakt DEFAULTCONTACTTITLE: Kontakt
DEFAULTHOMECONTENT: '<p>Dobrodošli! To je privzeta vstopna stran sistema Silverstripe. Lahko jo začnete urejati tako, da se prijavite v <a href="admin/">sistem za upravljanje z vsebino</a>.</p><p>Vabimo vas tudi, da si preberete <a href="http://docs.silverstripe.org">dokumentacijo</a> ali katero od <a href="http://www.silverstripe.org/learn/lessons">lekcij</a>.</p>'
DEFAULTHOMETITLE: Domov DEFAULTHOMETITLE: Domov
DEPENDENT_NOTE: 'Naslednje strani so odvisne od vsebine tukaj (vključuje navidezne strani, preusmerjevalne strani in strani s povezavami v vsebini)' DEPENDENT_NOTE: 'Naslednje strani so odvisne od vsebine tukaj (vključuje navidezne strani, preusmerjevalne strani in strani s povezavami v vsebini)'
DESCRIPTION: 'Splošna stran' DESCRIPTION: 'Splošna stran'
DependtPageColumnLinkType: 'Tip povezave' DependtPageColumnLinkType: 'Tip povezave'
EDITHEADER: 'Kdo lahko ureja to stran?' EDITHEADER: 'Kdo lahko ureja to stran?'
EDITORGROUPS: 'Skupine urednikov' EDITORGROUPS: 'Skupine urednikov'
EDIT_ALL_DESCRIPTION: 'Urejanje vseh strani' EDITOR_GROUPS_FIELD_DESC: 'Skupine s splošno pravico za urejanje vsebine: {groupList}'
EDIT_ALL_DESCRIPTION: 'Urejanje poljubne strani'
EDIT_ALL_HELP: 'Možnost urejanja katerekoli strani na spletnem mestu, ne glede na nastavitve v sklopu "Dostop". Zahteva dovoljenje za dostop do vsebine spletnega mesta.' EDIT_ALL_HELP: 'Možnost urejanja katerekoli strani na spletnem mestu, ne glede na nastavitve v sklopu "Dostop". Zahteva dovoljenje za dostop do vsebine spletnega mesta.'
Editors: 'Skupine urednikov' Editors: 'Skupine urednikov'
HASBROKENLINKS: 'Ta stran ima neveljavne povezave.' HASBROKENLINKS: 'Ta stran ima neveljavne povezave.'
HTMLEDITORTITLE: Vsebina HTMLEDITORTITLE: Vsebina
INHERIT: 'Privzemi od nadrejene strani' INHERIT: 'Privzemi od nadrejene strani'
INHERITSITECONFIG: 'Privzemi iz nastavitev spletišča'
LASTPUBLISHED: 'Nazadnje objavljeno' LASTPUBLISHED: 'Nazadnje objavljeno'
LASTSAVED: 'Nazadnje shranjeno' LASTSAVED: 'Nazadnje shranjeno'
LASTUPDATED: 'Nazadnje urejeno' LASTUPDATED: 'Nazadnje urejeno'
LINKCHANGENOTE: 'Sprememba URL-naslova te strani bo povzročila spremembo URL-naslovov do vseh podrejenih strani.' LINKCHANGENOTE: 'Sprememba URL-naslova te strani bo povzročila spremembo URL-naslovov do vseh podrejenih strani.'
LINKSALREADYUNIQUE: '{url} je že v uporabi' LINKSALREADYUNIQUE: '{url} je že v uporabi'
LINKSCHANGEDTO: 'spremenba {url1} -> {url2}' LINKSCHANGEDTO: 'spremenba {url1} -> {url2}'
MENUTITLE: 'Naziv navigacije' MENUTITLE: 'Naslov v navigaciji'
METADESC: Opis METADESC: Opis
METADESCHELP: 'Iskalniki to vsebino uporabljajo pri prikazu rezultatov. (Vsebina nima vpliva na vrstni red prikaza med zadetki v iskalniku.)' METADESCHELP: 'Iskalniki to vsebino uporabljajo pri prikazu rezultatov. (Vsebina nima vpliva na vrstni red prikaza med zadetki v iskalniku.)'
METAEXTRA: 'Meta tagi po meri' METAEXTRA: 'Meta tagi po meri'
METAEXTRAHELP: 'HTML oznake za dodatne meta podatke. Primer: <meta name="customName" content="your custom content here" />'
MODIFIEDONDRAFTHELP: 'Stran vsebuje še neobjavljene spremembe.' MODIFIEDONDRAFTHELP: 'Stran vsebuje še neobjavljene spremembe.'
MODIFIEDONDRAFTSHORT: Spremenjeno MODIFIEDONDRAFTSHORT: Spremenjeno
MetadataToggle: Metapodatki MetadataToggle: Metapodatki
MoreOptions: 'Več opcij' MoreOptions: 'Več opcij'
NOTPUBLISHED: 'Ni objavljeno' NOTPUBLISHED: 'Ni objavljeno'
OBSOLETECLASS: 'Trenutno izbrani tip strani ({type}) ne obstaja več. Če boste stran shranili, se bo tip strani ponastavil in lahko izgubite podatke. '
ONLIVEONLYSHORT: 'Samo objavljena' ONLIVEONLYSHORT: 'Samo objavljena'
ONLIVEONLYSHORTHELP: 'Stran je objavljena, osnutek pa ne obstaja' ONLIVEONLYSHORTHELP: 'Stran je objavljena, osnutek pa ne obstaja'
PAGELOCATION: 'Lokacija strani' PAGELOCATION: 'Lokacija strani'
PAGETITLE: 'Ime strani' PAGETITLE: 'Naslov strani'
PAGETYPE: 'Tip strani' PAGETYPE: 'Tip strani'
PARENTID: 'Starševska stran' PARENTID: 'Nadrejena stran'
PARENTTYPE: 'Lokacija strani' PARENTTYPE: 'Lokacija strani'
PARENTTYPE_ROOT: 'Stran na prvem nivoju' PARENTTYPE_ROOT: 'Stran na prvem nivoju'
PARENTTYPE_SUBPAGE: 'Podstran (izberi spodaj)' PARENTTYPE_SUBPAGE: 'Podstran (izberite nadrejeno stran spodaj)'
PERMISSION_GRANTACCESS_DESCRIPTION: 'Upravljaj s pravicami za dostop do vsebine' PERMISSION_GRANTACCESS_DESCRIPTION: 'Upravljaj s pravicami za dostop do vsebine'
PERMISSION_GRANTACCESS_HELP: 'Dovoli nastavitve pravic za dostop do izbrane strani v sklopu "Strani".' PERMISSION_GRANTACCESS_HELP: 'Dovoli nastavitve pravic za dostop do izbrane strani v sklopu "Strani".'
PLURALNAME: Strani PLURALNAME: Strani
@ -229,10 +246,10 @@ sl:
REMOVE_INSTALL_WARNING: 'Pozor: Zaradi varnosti priporočamo, da odstranite install.php it te SilverStripe namestitve.' REMOVE_INSTALL_WARNING: 'Pozor: Zaradi varnosti priporočamo, da odstranite install.php it te SilverStripe namestitve.'
REORGANISE_DESCRIPTION: 'Spremeni strukturo spletnega mesta' REORGANISE_DESCRIPTION: 'Spremeni strukturo spletnega mesta'
REORGANISE_HELP: 'Razvrsti strani v drevesni strukturi s funkcijo "povleci in izpusti".' REORGANISE_HELP: 'Razvrsti strani v drevesni strukturi s funkcijo "povleci in izpusti".'
SHOWINMENUS: 'Pokaži v meniju?' SHOWINMENUS: 'Prikaži v navigaciji'
SHOWINSEARCH: 'Pokaži v iskalniku?' SHOWINSEARCH: 'Prikaži v iskalnikih'
SINGULARNAME: Stran SINGULARNAME: Stran
TABBEHAVIOUR: Vedenje TABBEHAVIOUR: Obnašanje
TABCONTENT: 'Osrednja vsebina' TABCONTENT: 'Osrednja vsebina'
TABDEPENDENT: 'Odvisne strani' TABDEPENDENT: 'Odvisne strani'
TOPLEVEL: 'Vsebina Strani (Zgornja Stopnja)' TOPLEVEL: 'Vsebina Strani (Zgornja Stopnja)'
@ -240,12 +257,17 @@ sl:
URLSegment: 'Naslov URL' URLSegment: 'Naslov URL'
UntitledDependentObject: '{instanceType} brez naslova' UntitledDependentObject: '{instanceType} brez naslova'
VIEWERGROUPS: 'Skupine obiskovalcev' VIEWERGROUPS: 'Skupine obiskovalcev'
VIEW_ALL_DESCRIPTION: 'Prikaz vse strani' VIEWER_GROUPS_FIELD_DESC: 'Skupine s splošno pravico za ogled vsebine: {groupList}'
VIEW_DRAFT_CONTENT: Predogled. VIEW_ALL_DESCRIPTION: 'Ogled vsake strani'
VIEW_ALL_HELP: 'Možnost ogleda katere koli strani ne glede na to, kako so nastavljene pravice za ogled strani v sklopu ''Dostop''. Predpogoj je pravica za dostop do razdelka "Seznam strani".'
VIEW_DRAFT_CONTENT: 'Ogled osnutka'
VIEW_DRAFT_CONTENT_HELP: 'Ogled osnutka vsebine za uporabnike brez dostopa do vmesnika.' VIEW_DRAFT_CONTENT_HELP: 'Ogled osnutka vsebine za uporabnike brez dostopa do vmesnika.'
VIRTUALPAGEDRAFTWARNING: 'Da bi lahko objavili virtualno stran, morate prej objaviti izvorno stran.'
VIRTUALPAGEWARNING: 'Najprej izberite povezano stran in shranite, potem boste lahko objavili stran.'
VIRTUALPAGEWARNINGSETTINGS: 'Najprej v glavnih vsebinskih poljih izberite povezano stran, potem boste lahko objavili stran.'
Viewers: 'Skupine obiskovalcev (viewers)' Viewers: 'Skupine obiskovalcev (viewers)'
Visibility: Vidnost Visibility: Vidnost
has_one_Parent: 'Starševska stran' has_one_Parent: 'Nadrejena stran'
many_many_BackLinkTracking: 'Spremljanje povezav "nazaj"' many_many_BackLinkTracking: 'Spremljanje povezav "nazaj"'
many_many_ImageTracking: 'Spremljanje slik' many_many_ImageTracking: 'Spremljanje slik'
many_many_LinkTracking: 'Spremljanje povezav' many_many_LinkTracking: 'Spremljanje povezav'
@ -255,12 +277,27 @@ sl:
TITLE_USED_ON: 'Uporabljena na' TITLE_USED_ON: 'Uporabljena na'
SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension: SilverStripe\CMS\Model\SiteTreeFileFormFactoryExtension:
USAGE: Uporaba USAGE: Uporaba
SilverStripe\CMS\Model\SiteTreeLink:
PLURALNAME: 'Povezave v strukturi'
PLURALS:
one: 'Povezava v strukturi'
two: '{count} povezavi v strukturi'
few: '{count} povezav v strukturi'
other: '{count} povezav v strukturi'
SINGULARNAME: 'Povezava v strukturi'
SilverStripe\CMS\Model\VirtualPage: SilverStripe\CMS\Model\VirtualPage:
CHOOSE: 'Povezana stran' CHOOSE: 'Povezana stran'
DESCRIPTION: 'Prikaže vsebino, ki je vnesena na drugi strani' DESCRIPTION: 'Prikaže vsebino, ki je vnesena na drugi strani'
EditLink: uredi EditLink: uredi
HEADER: 'To je navidezna stran' HEADER: 'To je navidezna stran'
HEADERWITHLINK: 'To je virtualna stran, ki vsebino črpa iz strani "{title}" ({link})'
PLURALNAME: 'Virtualne strani' PLURALNAME: 'Virtualne strani'
PLURALS:
one: 'Virtualna stran'
two: '{count} virtualni strani'
few: '{count} virtualnih strani'
other: '{count} virtualna stran'
PageTypNotAllowedOnRoot: 'Tipa izvorne strani ({type}), ki je osnova za to virtualno stran, ni dovoljeno umestiti na korenskem nivoju'
SINGULARNAME: 'Virtualna stran' SINGULARNAME: 'Virtualna stran'
SilverStripe\CMS\Reports\BrokenFilesReport: SilverStripe\CMS\Reports\BrokenFilesReport:
BROKENFILES: 'Strani z nedelujočimi datotekami' BROKENFILES: 'Strani z nedelujočimi datotekami'
@ -317,5 +354,6 @@ sl:
HEADER: 'Postopek za odstranjevanje strani, ki nimajo nadrejenih strani' HEADER: 'Postopek za odstranjevanje strani, ki nimajo nadrejenih strani'
NONEFOUND: 'Nismo našli strani brez nadrejenih strani' NONEFOUND: 'Nismo našli strani brez nadrejenih strani'
NONEREMOVED: 'Nobene strani nismo odstranili' NONEREMOVED: 'Nobene strani nismo odstranili'
OPERATION_REMOVE: 'Odstrani izbrano iz vseh faz (PAZITE: Izbrane strani bodo izbrisane tako iz objave kot iz osnutkov.)'
SELECTALL: 'izberi vse' SELECTALL: 'izberi vse'
UNSELECTALL: 'odstrani vse' UNSELECTALL: 'odstrani vse'

View File

@ -58,6 +58,7 @@
"@silverstripe/webpack-config": "^1.3.0", "@silverstripe/webpack-config": "^1.3.0",
"babel-jest": "^23.6.0", "babel-jest": "^23.6.0",
"babel-polyfill": "^6.26.0", "babel-polyfill": "^6.26.0",
"copy-webpack-plugin": "^4",
"jest-cli": "^23.6.0" "jest-cli": "^23.6.0"
}, },
"jest": { "jest": {

View File

@ -2,6 +2,9 @@
<ruleset name="SilverStripe"> <ruleset name="SilverStripe">
<description>CodeSniffer ruleset for SilverStripe coding conventions.</description> <description>CodeSniffer ruleset for SilverStripe coding conventions.</description>
<file>code</file>
<file>tests</file>
<!-- base rules are PSR-2 --> <!-- base rules are PSR-2 -->
<rule ref="PSR2" > <rule ref="PSR2" >
<!-- Current exclusions --> <!-- Current exclusions -->

View File

@ -9,7 +9,7 @@ Feature: View Reports
And I am logged in with "ADMIN" permissions And I am logged in with "ADMIN" permissions
And I go to "/admin/reports" And I go to "/admin/reports"
Scenario: I can view the "Pages without content" report Scenario: I can view the "Pages with no content" report
When I follow "Pages without content" When I follow "Pages without content"
Then I should see "Empty Page" Then I should see "Empty Page"
But I should not see "Filled Page" But I should not see "Filled Page"

View File

@ -1,5 +1,6 @@
const Path = require('path'); const Path = require('path');
const webpackConfig = require('@silverstripe/webpack-config'); const webpackConfig = require('@silverstripe/webpack-config');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const { const {
resolveJS, resolveJS,
externalJS, externalJS,
@ -37,7 +38,11 @@ const config = [
resolve: resolveJS(ENV, PATHS), resolve: resolveJS(ENV, PATHS),
externals: externalJS(ENV, PATHS), externals: externalJS(ENV, PATHS),
module: moduleJS(ENV, PATHS), module: moduleJS(ENV, PATHS),
plugins: pluginJS(ENV, PATHS), plugins: pluginJS(ENV, PATHS).concat([
new CopyWebpackPlugin([
{ from: 'client/src/images', to: 'images' },
])
])
}, },
{ {
name: 'css', name: 'css',