@massimo-cassandro/minimo 1.33.1 → 1.33.2

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.
@@ -178,16 +178,24 @@ force_cat() {
178
178
  # di copia da usare per ogni file: safe_cat_with_ports confronta e backuppa
179
179
  # il singolo file (sostituzione porte no-op se non contiene placeholder);
180
180
  # force_cat sovrascrive sempre senza controlli (vedi sopra, usata per ./app).
181
+ # Il quinto argomento (opzionale) è una lista di basename (separati da spazio,
182
+ # riferiti al nome del file sorgente, prima di un eventuale rename_fn) da
183
+ # saltare: usato per escludere package-tpl.json, già copiato a parte prima
184
+ # dell'installazione dei pacchetti npm (vedi più sotto).
181
185
  install_tree() {
182
186
  local src_root="$1"
183
187
  local dest_root="$2"
184
188
  local rename_fn="$3"
185
189
  local copy_fn="${4:-safe_cat_with_ports}"
190
+ local exclude="$5"
186
191
  local file rel dir base new_base dest
187
192
  while IFS= read -r file; do
188
193
  rel="${file#"$src_root"/}"
189
194
  dir="$(dirname "$rel")"
190
195
  base="$(basename "$rel")"
196
+ if [ -n "$exclude" ] && [[ " $exclude " == *" $base "* ]]; then
197
+ continue
198
+ fi
191
199
  if [ -n "$rename_fn" ]; then
192
200
  new_base="$("$rename_fn" "$base")"
193
201
  else
@@ -239,6 +247,19 @@ fi
239
247
  echo -e "${GREEN}Files will be installed in: '${FRONTEND_INSTALL_PATH}'${NC}"
240
248
 
241
249
 
250
+ # package.json va creato dal template PRIMA di installare qualunque pacchetto:
251
+ # se non esistesse ancora, i comandi `npm i` più sotto ne genererebbero uno
252
+ # "al volo" privo di scripts/metadati del template, e le dipendenze verrebbero
253
+ # registrate lì; alla successiva install_tree su source_files/root (più sotto)
254
+ # quel package.json risulterebbe diverso dal template e verrebbe spostato in
255
+ # OLD-package.json, perdendo le dipendenze appena installate. Per questo qui
256
+ # si usa safe_cat_with_ports (idempotente, con backup OLD- se il file esiste
257
+ # già con contenuto diverso) e poi si esclude package-tpl.json dalla
258
+ # install_tree sulla root, per non ripetere la copia dopo che npm l'ha
259
+ # già modificato.
260
+ echo -e "\n${GREEN}...package.json${NC}"
261
+ safe_cat_with_ports "${SOURCE_FILES_DIR}/root/package-tpl.json" "package.json"
262
+
242
263
  echo -e "\n${GREEN}...NODE MODULES${NC}"
243
264
 
244
265
  dependencies=(
@@ -343,8 +364,10 @@ mkdir -p "$WEBPACK_MODULES_INSTALL_PATH"
343
364
  # rename_root_file), quindi aggiungere/spostare/rinominare file lì non
344
365
  # richiede modifiche a questo script. Per app/ si usa force_cat (nessun
345
366
  # controllo/backup per singolo file, vedi commento su FRONTEND_INSTALL_PATH).
367
+ # package-tpl.json è escluso: già copiato a parte prima dell'installazione
368
+ # dei pacchetti npm (vedi sezione NODE MODULES più sopra).
346
369
  echo -e "${DIM}...root${NC}"
347
- install_tree "${SOURCE_FILES_DIR}/root" "." rename_root_file
370
+ install_tree "${SOURCE_FILES_DIR}/root" "." rename_root_file "" "package-tpl.json"
348
371
  echo -e "${DIM}...app${NC}"
349
372
  install_tree "${SOURCE_FILES_DIR}/app" "${FRONTEND_INSTALL_PATH}" "" force_cat
350
373
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@massimo-cassandro/minimo",
3
- "version": "1.33.1",
3
+ "version": "1.33.2",
4
4
  "description": "Light css framework & utilities",
5
5
  "type": "module",
6
6
  "main": "./index.js",